Новые ключевые слова и новый тип указателей в Visual C ++ 2005. Что такое управляемый C ++? - PullRequest
0 голосов
/ 12 октября 2009

Возможные дубликаты
Что такое gcnew?
Что означает каретка в C ++ / CLI?
Разница между управляемым c ++ и c ++

Я продвинутый программист на C ++ с g ++. Но в настоящее время я работаю над Visual C ++ 2005 и занимаюсь разработкой приложений для Windows Forms. Но мне трудно с его новой терминологией. Например, вместо new он имеет gcnew и

String ^ такие вещи. Может кто-нибудь объяснить, что такое ^, похожий на указатель?

Могу ли я заставить Visual C ++ работать так же, как обычный C ++, такой как компилятор g ++? Я также слышал кое-что об управляемом C ++. Что это?

Ответы [ 5 ]

1 голос
/ 12 октября 2009

Windows Forms специфичны для .Net, поэтому вам нужно использовать C ++ / CLI (это «управляемый C ++»), если вы хотите это сделать.

Тем не менее, я не уверен, что вы действительно хотите формы Windows? Вы просто хотите какой-то оконный графический интерфейс, верно? Если это так, вы можете использовать что-то вроде MFC или просто собственные вызовы O / S, чтобы создать свой GUI, или вы можете использовать API-оболочку, например Qt

[РЕДАКТИРОВАТЬ] Просто уточнить немного:)

Я также слышал кое-что об управляемом C ++. Что это?

C ++ / CLI - это .Net-реализация C ++. Здесь вы можете использовать как обычный C ++, так и управляемый код. C ++ / CLI - это попытка Microsoft облегчить процесс обучения для разработчиков C ++, чтобы они смогли перейти к управляемой среде, однако в наши дни она используется нечасто, хотя вам, вероятно, будет трудно найти (m) какие-либо хорошие учебные пособия. Visual C ++ - это просто название IDE, оно не имеет никакого отношения к тому, какой тип C ++ вы используете. Вы можете использовать Visual C ++ так же, как вы используете g ++, но если вы не хотите ничего делать с консольным приложением, вам нужно подключить некоторую логику GUI к вашему приложению. Как сказано в моем первоначальном ответе, это можно сделать несколькими способами.

Если вы уверены, что хотите использовать .Net, я рекомендую провести день с C #, так как это очень легко узнать, если у вас есть опыт работы с C ++, но, судя по вашему вопросу, я не думаю, что это то, что вам нужно: )

1 голос
/ 12 октября 2009

gcnew и ^ взяты из нового синтаксиса Visual C ++. Новый синтаксис не является частью стандарта ISO / ANSI C ++, но представляет собой набор расширений для C ++, стандартизированных в соответствии со стандартом Ecma C ++ / CLI. Вы можете не использовать их, если не хотите. Здесь вы можете прочитать больше о расширениях Visual C ++.

1 голос
/ 12 октября 2009

Значения gcnew и ^ управляются C ++, который отличается от языка c ++. Вы можете использовать VS2005 как обычный компилятор C ++, не используя тип проекта из раздела CLR окна нового проекта.

0 голосов
/ 14 декабря 2009

Обратите внимание, что Windows Forms - не единственный способ создания графических интерфейсов под Windows. Вместо этого вы можете использовать обычный Win32 API, если вам нужен чистый C (который вы можете обернуть с помощью C ++, если хотите).

Если вы выберете Windows Forms, у вас есть возможность использовать C #, VB.NET или C ++ / CLI (Managed C ++). Вам не нужно использовать C ++ / CLI, как вам кажется.

0 голосов
/ 12 октября 2009

Управляемый C ++ используется для разработки .Net в Common Language Runtime (CLR) Microsoft. Этот специальный синтаксис C ++ был создан, чтобы позволить разработчику C ++ войти в сообщество .Net без изучения нового языка, такого как C #.

Вы можете использовать Visual C ++ так же, как g ++, создав проект без CLR.

...