~~NOCACHE~~
====== C++ ======
++++Навигация |
{{indexmenu>:cpp| tsort dsort hsort nsort}}
++++
++++Полезности|
* Язык
* [[cpp:sl_cpp]]
* [[cpp:stl]]
* Инструменты
* [[soft:gcc]]
* [[soft:make]]
* [[playground:soft:cmake]]
* [[playground:soft:autotools]]
* [[playground:soft:git]]
* Прочее
* [[cpp:styleguide_cpp]]
++++
===== Стандарты =====
++++Развитие и взаимное влияние версий C и Cpp |
{{:cpp:candcpp.png?direct}}
++++
* Изначально была написана стандартная библиотека, но она не была стандартизирована((Разработка единых стандартов для языка программирования, и в частности Си++, не является необходимой для успешной работы с языком. Об этом свидетельствует такой факт, что первый стандарт для Си++ был опубликован только в 1998 году, спустя почти двадцать лет со времени появления самого языка, который всё это время уже успешно применялся)) и разные компиляторы имели свои собственные реализации.
* #@CPP98_HTML@# (ISO/IEC 14882:1998)
* появилась библиотека STL
* потоки ввода-вывода
* строки
* C++03 (ISO/IEC 14882:2003)
* описаны нюансов реализации компиляторов
* многими рассматривается как лишь исправленный C++98
* TR1 (TR 19768)
* содержит 13 библиотек, которые стали частью C++11
* #@CPP11_HTML@#
* #@CPP14_HTML@#
* механизм блокировки чтения-записи
* обобщенные лямбды
* обобщенные constexpr-функции
* #@CPP17_HTML@#
* параллельные алгоритмы STL (Parallel STL)
* стандартизированная файловая система
* std::optional
* std::variant
* std::any
* #@CPP20_HTML@#
* ranges
* coroutines
* concepts
* modules
* #@CPP23_HTML@#
* #@CPP26_HTML@#
[[https://ru.cppreference.com/w/cpp/compiler_support|Таблица]] поддержки фич стандартов разными компиляторами.
===== Ресурсы =====
* [[http://stolyarov.info/books/cppintro|Введение в язык Си++]]
* [[http://oberon2005.oberoncore.ru/rb/rb0301.pdf|Летопись языков. Си++]]
* [[https://cplusplus.com|cplusplus.com]]
* [[https://ru.cppreference.com|удобнейший справочник]]