Пытаюсь самостоятельно изучать С++ по учебнику Хортона.
В нем материал подаеться в разрезе сравнения
"родного" С++ (ISO/IEC C++) и его
"расширенной версией" C++/CLI.
Но не понятно место C++/CLI в иерархии языков.. . Почему этот термин "C++/CLI" не часто встречаеться в литературе, на форумах и вакансиях/резюме программистов? Может у него есть какой-то более распространенный синоним?
Можно ли сказать, что "C++/CLI" являеться "не-до-" С#. И тогда грамотней не его изучать, а сначала "ISO/IEC C++", а потом С#?
Можно ли сказать, что вакансия на программиста С++ подразумевает знание ИМЕННО "C++/CLI", а не "ISO/IEC C++"? Или ТОЛЬКО наоборот?
Я осознаю, что постановка вопроса поверхностная и примитивная, но все же.. .
Заранее благодарен за подсказку!
Другие языки программирования и технологии
Что такое C++/CLI ?
> Можно ли сказать, что "C++/CLI" являеться "не-до-" С#.
Увы, да.
У C++/CLI есть большой плюс перед C# - поддержка неуправляемого кода и неуправляемых заголовков, в т. ч. Windows.h (WinAPI).
То есть C++/CLI действительно расширение к чистому C++, а не альтернатива, как C#.
Но, вместо того, чтобы дорабатывать C++/CLI, добавив в него синтаксический сахар C#, написав реализацию под WPF и др. , в Microsoft почему-то решили не только не развивать этот язык, но и потихоньку пересаживать всех на C#, делая разработку на C++/CLI всё менее удобной.
В VS 2010 для C++/CLI не работало IntelliSense, в 2012 IntelliSense вернули, но зато убрали шаблон проекта Приложение Winforms...
Документацию по C++/CLI никто толком не пишет. .
Все это и свело его популярность почти на нет.
> Можно ли сказать, что вакансия на программиста С++ подразумевает знание ИМЕННО "C++/CLI", а не "ISO/IEC C++"?
Знаний чистого C++ мало.
Нужно знать какой-нибудь фреймворк для работы с GUI, сетью, данными и т. д. Например, Qt, VCL (C++ Builder), WinAPI.
CLI (точнее, .NET) тоже подошел бы, но под .NET обычно на C# пишут, см. выше
Увы, да.
У C++/CLI есть большой плюс перед C# - поддержка неуправляемого кода и неуправляемых заголовков, в т. ч. Windows.h (WinAPI).
То есть C++/CLI действительно расширение к чистому C++, а не альтернатива, как C#.
Но, вместо того, чтобы дорабатывать C++/CLI, добавив в него синтаксический сахар C#, написав реализацию под WPF и др. , в Microsoft почему-то решили не только не развивать этот язык, но и потихоньку пересаживать всех на C#, делая разработку на C++/CLI всё менее удобной.
В VS 2010 для C++/CLI не работало IntelliSense, в 2012 IntelliSense вернули, но зато убрали шаблон проекта Приложение Winforms...
Документацию по C++/CLI никто толком не пишет. .
Все это и свело его популярность почти на нет.
> Можно ли сказать, что вакансия на программиста С++ подразумевает знание ИМЕННО "C++/CLI", а не "ISO/IEC C++"?
Знаний чистого C++ мало.
Нужно знать какой-нибудь фреймворк для работы с GUI, сетью, данными и т. д. Например, Qt, VCL (C++ Builder), WinAPI.
CLI (точнее, .NET) тоже подошел бы, но под .NET обычно на C# пишут, см. выше
С++/CLI - это адаптация C++ для .NET
То есть, взяли C++/ISO и добавили в него объектную модель Common Language Infrastructure
Соответственно, чаще Вы встретите упоминание о C++ и .NET раздельно.
Вакансия программиста подразумевает знание C++/ISO, однако, если там же указано требование о знании .NET, стоит задуматься/уточнить
То есть, взяли C++/ISO и добавили в него объектную модель Common Language Infrastructure
Соответственно, чаще Вы встретите упоминание о C++ и .NET раздельно.
Вакансия программиста подразумевает знание C++/ISO, однако, если там же указано требование о знании .NET, стоит задуматься/уточнить
С++/CLI это гибрид обычного С++ и C#
Это позволяет использовать старый код написанный на C++ в проектах .NET
Например вы можете к старой программе на С++ привесить визуальный интерфейс состоящий из всяких кнопочек форм и т. д и всё будет работать.
В C# такое невозможно.
При разработке на С++/CLI код на C# выглядит немного странно там надо добавлять всякие птички галочки чтобы отличались команды на C# от таких же команд на С++
К стаи говоря насколько я понял С++/CLI ещё называют "visual c++"
И по visual c++ есть довольно много литературы.
Это позволяет использовать старый код написанный на C++ в проектах .NET
Например вы можете к старой программе на С++ привесить визуальный интерфейс состоящий из всяких кнопочек форм и т. д и всё будет работать.
В C# такое невозможно.
При разработке на С++/CLI код на C# выглядит немного странно там надо добавлять всякие птички галочки чтобы отличались команды на C# от таких же команд на С++
К стаи говоря насколько я понял С++/CLI ещё называют "visual c++"
И по visual c++ есть довольно много литературы.
Возможные значения CLI: https://ru.wikipedia.org/wiki/CLI
Это, возможно, создание консольных приложений или адаптация под NET.
Это, возможно, создание консольных приложений или адаптация под NET.
Это возможнасть писать программки через библиотеку фрамеверка т. е. NET
Похожие вопросы
- Учусь програмировать на C++ по книге "C++ для чайников".Проблема.
- Зачем нужен C++, если есть C?
- Помогите срочно C#
- Помогите исправить ошибку в программе (c++).
- Ещё тупой вопрос по C++ :)
- Почему многие отдают предпочтение C++ а не C# ?
- Учу C++! Уже знаю: типы данных, циклы. условия, привидения и т. д учу 5дней. вот программа! Как норм за 5 дней?
- Как в C++ приравнять переменную и текст? А то такую запись нельзя. А без этого задачу не решить
- Язык программирования C.
- Проверти правильность программы на C++