Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para programação .NET, o Visual C++ no Visual Studio 2017 oferece suporte à criação de assemblies mistos usando a opção de compilador /clr (Common Language Runtime Compilation). As opções /clr:pure e clr:safe foram preteridas no Visual Studio 2015 e não têm suporte no Visual Studio 2017. Se o seu código precisa ser seguro ou verificável, recomendamos que você o transfira para C#.
Misto (/clr)
Assemblies mistos (compilados com /clr) contêm partes não geridas e geridas, o que possibilita o uso de recursos .NET, mas ainda contêm código nativo. Isso permite que aplicativos e componentes sejam atualizados para usar recursos .NET sem exigir que todo o projeto seja reescrito. Usar o Visual C++ para misturar código gerenciado e nativo dessa maneira é chamado de Interoperabilidade C++. Para obter mais informações, consulte Assemblies mistos (nativos e gerenciados) e Interoperabilidade nativa e .NET.
As chamadas feitas de assemblies gerenciados para DLLs nativas via P/Invoke serão compiladas, mas poderão falhar em tempo de execução, dependendo das configurações de segurança.
Há um cenário de codificação que passará pelo compilador, mas que resultará em um assembly não verificável: chamar uma função virtual por meio de uma instância de objeto usando o operador de resolução de escopo. Por exemplo: MyObj -> A::VirtualFunction();.