Вопрос

Название темы на самом деле является моим вопросом.И второй вопрос заключается в следующем:Когда мне использовать что из этих двух?

Это было полезно?

Решение

Если не указано, C ++ - это неуправляемый C ++, скомпилированный в машинный код.В неуправляемом C ++ вы должны управлять распределением памяти вручную.

Управляемый C ++ - это язык, изобретенный Microsoft, который компилируется в байт-код, запускаемый .NET Framework.Он использует в основном тот же синтаксис, что и C ++ (отсюда и название), но компилируется тем же способом, что и C # или VB.NET;в основном меняется только синтаксис, напримериспользование '->' для указания на элемент объекта (вместо '.' в C #), использование '::' для пространств имен и т.д.

Управляемый C ++ был создан для облегчения перехода с классического C ++ на .NET Framework.Он не предназначен для использования при запуске новых проектов (предпочтительнее C #).

Другие советы

"Управляемый C ++" относится к языку, который был включен в Visual Studio.NET/VisualStudio.NET 2003.С тех пор так и было устаревший, причем последней версией .net C ++ является C ++ / CLI.

Вы можете кодировать родной язык C ++ двумя различными способами.Первый - это компиляция непосредственно в машинный код, используя только операционную систему между вами и Платформой (аппаратным обеспечением).Второе нативное кодирование выполняется с помощью MFC (Microsoft Foundation Classes).Это то же самое, что и в первом примере, за исключением использования MFC.

Управляемый C ++ использует среду CLR (Common Language Runtime) Среда CLR вместе с библиотеками классов .net framework составляют .NET Framework.Этот управляемый стандарт C ++ / CLI использует .Net Framework наряду с MSIL ( промежуточный язык Microsoft).Этот стандарт работает путем сопоставления с машинным кодом только тогда, когда программа выполняется с использованием компилятора just in time.Если ваш код будет выполняться на разных аппаратных платформах, использование управляемого кода будет намного проще.Как и во всем остальном, за удобство приходится платить небольшую цену, поскольку машинный код будет выполняться быстрее.

Я думаю, вам следует взглянуть на этот вопрос.

Управляемый C ++ означает, что распределение памяти, управление и сборка мусора выполняются виртуальной машиной.Тогда как в "обычном" C ++ вам пришлось бы выделять и освобождать память.

Вы будете использовать управляемый C ++, когда захотите использовать собственную библиотеку классов C ++ из управляемого кода.В этом случае вы оборачиваете неуправляемые классы в управляемые классы C ++, а затем используете их на любом языке CLR.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top