Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Для программирования на .NET Visual C++ в Visual Studio 2017 поддерживает создание смешанных сборок с помощью параметра компилятора /clr (компиляция среды исполнения Common Language Runtime). Параметры /clr:pure и clr:safe устарели в Visual Studio 2015 и не поддерживаются в Visual Studio 2017. Если код должен быть безопасным или проверяемым, рекомендуется перенести его в C#.
Смешанный (/clr)
Смешанные сборки (скомпилированные с /clr), содержат как неуправляемые, так и управляемые части, что позволяет им использовать функции .NET, но по-прежнему содержат машинный код. Это позволяет приложениям и компонентам обновляться для использования функций .NET, не требуя перезаписи всего проекта. Использование Visual C++ для смешивания управляемого и нативного кода таким образом называется взаимодействием C++ Interop. Для получения дополнительной информации см. Смешанные сборки (родные и управляемые) и Взаимодействие с .NET.
Вызовы, сделанные из управляемых сборок в собственные библиотеки DLL через P/Invoke, компилируются, но могут завершиться сбоем во время выполнения в зависимости от параметров безопасности.
Существует один сценарий программирования, который будет передавать компилятор, но это приведет к неподверяемой сборке: вызов виртуальной функции через экземпляр объекта с помощью оператора разрешения области. Например: MyObj -> A::VirtualFunction();.