~~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|удобнейший справочник]]