Язык программирования C++ создан на основе языка C. Синтаксис C++ унаследован от языка C. Один из принципов разработки стандарта C++ — это сохранение совместимости с C. C++ не является в строгом смысле надмножеством C. Можно писать программы на C так, чтобы они успешно компилировались на C++, но не все программы на языке C успешно компилируются C++ компилятором. C и C++ сильно отличаются как по сложности, так и по принятым архитектурным решениям, которые используются в обоих языках.
Разрабатывается с начала 1980-х годов. Создатель — сотрудник Bell Labs Бьёрн Страуструп. Изначально это было расширение языка C для поддержки работы с классами и объектами. Это позволило проектировать программы на более высоком уровне абстракции. Ранние версии языка назывались “C with classes”. Первый компилятор cfront, перерабатывающий исходный код “C с классами” в исходный код на C.
Разрабатывается с начала 1980-х годов. Создатель — сотрудник Bell Labs Бьёрн Страуструп. Изначально это было расширение языка C для поддержки работы с классами и объектами. Это позволило проектировать программы на более высоком уровне абстракции. Ранние версии языка назывались “C with classes”. Первый компилятор cfront, перерабатывающий исходный код “C с классами” в исходный код на C.
К 1983 году в язык было добавлено много новых возможностей:
- виртуальные функции;
- перегрузка функций и операторов;
- ссылки;
- константы.
Получившийся язык перестал быть просто дополненной версией классического C и был переименован из “C с классами” в C++. Имя языка, получившееся в итоге, происходит от оператора унарного постфиксного инкремента C ’++’ (увеличение значения переменной на единицу). Язык также не был назван D, поскольку “является расширением C и не пытается устранять проблемы путём удаления элементов C”.
В 1998 году впервые был стандартизован язык C++. В 1998 году был ратифицирован международный стандарт языка C++: ISO/IEC 14882:1998 “Standard for the C++ Programming Language”.
В 2003 году был опубликован стандарт языка ISO/IEC 14882:2003, где были исправлены выявленные ошибки и недочёты предыдущей версии стандарта.
В 2005 году был выпущен Library Technical Report 1 (TR1). С 2005 года началась работа над новой версией стандарта, которая получила кодовое название C++0x.
В конце концов в 2011 году стандарт был принят и получил название C++11 ISO/IEC 14882:2011.
В данный момент ведётся одновременная работа над двумя версиями стандарта: C++14 и C++17.
Комментариев нет:
Отправить комментарий