Sdílet prostřednictvím


Čistý a ověřitelný kód (C++/CLI)

Pro programování v .NET, Visual C++ v sadě Visual Studio 2017 podporuje vytváření smíšených sestavení pomocí volby kompilátoru /clr (kompilace pro Common Language Runtime). Možnosti /clr:pure and clr:safe jsou v sadě Visual Studio 2015 zastaralé a v sadě Visual Studio 2017 nejsou podporované. Pokud váš kód musí být bezpečný nebo ověřitelný, doporučujeme ho přenést do C#.

Smíšený (/clr)

Smíšená sestavení (kompilovaná pomocí /clr) obsahují nespravované i spravované části, což jim umožňuje používat funkce .NET, ale stále obsahují nativní kód. To umožňuje aktualizaci aplikací a komponent tak, aby používaly funkce .NET, aniž by bylo nutné přepsat celý projekt. Použití jazyka Visual C++ ke kombinování spravovaného a nativního kódu tímto způsobem se nazývá interoperabilita jazyka C++. Další informace naleznete v tématu Smíšená (nativní a spravovaná) sestavení a nativní a interoperabilita .NET.

Volání ze spravovaných sestavení do nativních knihoven DLL pomocí P/Invoke se zkompiluje, ale za běhu může selhat v závislosti na nastavení zabezpečení.

Existuje jeden scénář kódování, který projde kompilátorem, ale povede k neověřitelnému sestavení: volání virtuální funkce pomocí instance objektu s využitím operátoru rozlišení oboru. Například: MyObj -> A::VirtualFunction();.

Viz také