Где найти в Интернете стандарты языка Си++? Таким вопросом задаются программисты, которым недостаточно авторского описания языка в различных учебных пособиях.
Найти описание стандарта языка программирования Си++ можно на сайте Open Standards open-std.org.
Добраться до перечня стандартов языка Си++ проще всего следующим способом:
- Открыть главную страницу open-std.org
- Нажать на ссылку "WG21 - C++"
- Нажать на ссылку "ISO/IEC 14882:2017 Programming Language C++"
- Открывшаяся страница будет содержать следующие ссылки на PDF-файлы стандартов языка Си++ :
A draft for the 2003 edition with the combined C++ standard from 1998 and the corrigendum is available in N1316.
A draft for the 2011 edition is available in N3242.
A draft for the 2014 edition is available in N3797.
A draft for the 2017 edition is available in N4659.
A draft for the 2020 edition is available in N4849.
На 2022 год адрес этой страницы следующий:
https://www.open-std.org/JTC1/SC22/WG21/docs/standards
Как нетрудно заметить, на странице размещены ссылки на версии стандарта C++03, C++11, C++14, C++17, C++20. И все эти версии являются черновиками (draft или working draft). Так исторически сложилось: для языка C++ не существует в свободном доступе законченной спецификации, даже для конкретной его версии. Традиционно, следует пользоваться самым свежим черновиком. Звучит странно? В мире C++ это норма. И даже разработчики компиляторов тоже разрабатывают компиляторы на основе этих черновых стандартов, а потом допиливают компилятор на основе утвержденного стандарта, который можно только купить.
Кстати, пока стандарт разрабатывается, он называется working draft. Когда стандарт подготовлен для того, чтобы его передать в комитет ISO, он начинает считаться final draft. Однако как найти final draft на сайте open-std.org - никто не знает. Поэтому, можно пользоваться именно теми драфтами, которые доступны. Считается что изменений между ними и итоговым стандартом практически нет, за исключением слов First Edition или Final Draft.
Для примера, к этой записи прикреплены файлы:
- Официальный "покупной" стандарт Си++03, так как по ссылке N1316 файл "черновика" не отдается;
- Самый актуальный черновик стандарта языка Си++11.