Código puro y verificable (C++/CLI)

Para la programación de .NET, Visual C++ en Visual Studio 2017 admite la creación de ensamblados mixtos mediante la opción del compilador /clr (Compilación de Common Language Runtime). Las opciones /clr:pure y clr:safe están en desuso en Visual Studio 2015 y no se admiten en Visual Studio 2017. Si el código debe ser seguro o verificable, se recomienda que lo porte a C#.

Mixta (/clr)

Los ensamblados mixtos (compilados con /clr)contienen elementos administrados y no administrados, lo que permite que usen características de .NET, pero que aún contengan código nativo. Esto permite actualizar aplicaciones y componentes para utilizar las características de .NET sin tener que volver a escribir el proyecto completo. El Visual C++ para mezclar código administrado y nativo de este modo se denomina interoperabilidad de C++. Para obtener más información, vea Ensamblados mixtos (nativos y administrados) y Interoperabilidad nativa y .NET.

Las llamadas realizadas desde ensamblados administrados a archivos DLL nativos a través de P/Invoke se compilarán, pero pueden producir un error en tiempo de ejecución en función de la configuración de seguridad.

Existe un escenario de codificación que cumplirá los requisitos del compilador, pero que dará como resultado un ensamblado no comprobable: llamar a una función virtual a través de una instancia de objeto mediante un operador de resolución de ámbito. Por ejemplo: MyObj -> A::VirtualFunction();.

Vea también