visual studio referencia puedo puede proyecto crear compilar agregar c# .net c++-cli non-nullable

c# - puede - no puedo agregar referencia en visual studio 2017



¿Cómo puedo acercarme a los tipos de referencia no anulables en C#hoy? (2)

Me he encontrado con esto unas cuantas veces ... Todavía tengo que encontrar algo mejor que la solución de Skeet. Ha resuelto todos los casos que he encontrado, así que tengo que darle mi voto.

Estoy de acuerdo en que es una situación un tanto intrincada que tenemos que recurrir a eso ... pero su solución resuelve el problema.

He leído muchas de las preguntas y respuestas non-nullable . Parece que la mejor manera de acercarse a los tipos que no NonNullable<> en C # (4.0) es mediante el NonNullable<> de NonNullable<> Jon Skeet.

Sin embargo, parece que C ++ / CLI ha resuelto gran parte del problema al admitir referencias administradas: Foo% (en lugar de C ++ Foo& ) nativo. El compilador hace que esto funcione agregando modreq(IsImplicitlyDereferenced) al argumento. Tratar de llamar a una función de C # resulta en:

''<FunctionName>'' is not supported by the language

¿Hay algo mejor que NonNullable <> ?

¿Hay alguna forma de (razonablemente, es decir, sin usar la reflexión) llamar a un método C ++ / CLI Foo::Method(Bar%) desde C #?

[editar] Parece que actualmente no hay nada mejor que NonNullable <> ... Ojalá hubiera recibido algunos comentarios sobre C ++ / CLI porque ya tiene al menos una solución parcial.