kb · c++ standards reference
Один HTML на фичу: что это, зачем ввели, как работает под капотом, пример, грабли, куда смотреть дальше. Читать понемногу, по разделу за раз — не учебник, а справочник для актуализации базы.One HTML page per feature: what it is, why it was introduced, how it works under the hood, an example, gotchas, where to look next. Meant to be read a little at a time, one section at a sitting — a reference for keeping the knowledge base current, not a textbook.
Каждый стандарт — своя папка со своим index.html внутри (навигация по разделам/фичам этого стандарта).Each standard has its own folder with its own index.html inside (navigation across that standard's sections/features).
move semantics, lambda, auto, smart pointers, threading, unordered-контейнеры — самый большой по объёму сдвиг языка со времён C++98.move semantics, lambda, auto, smart pointers, threading, unordered containers — the largest shift in the language since C++98.
generic lambdas, decltype(auto), variable templates — доводка C++11 без больших архитектурных сдвигов.generic lambdas, decltype(auto), variable templates — polishing C++11 without major architectural shifts.
optional, variant, string_view, structured bindings, if constexpr, parallel algorithms — многое уже описано частично в cpp_ts_extensions.md.optional, variant, string_view, structured bindings, if constexpr, parallel algorithms — much of it already partially covered in cpp_ts_extensions.md.
concepts, ranges, coroutines, modules, jthread, barrier/latch — часть уже частично покрыта в cpp_concurrency.md.concepts, ranges, coroutines, modules, jthread, barrier/latch — some of it already partially covered in cpp_concurrency.md.
std::expected, deducing this, ranges-доводка, mdspan, stacktrace.std::expected, deducing this, ranges polish, mdspan, stacktrace.
Static reflection, std::execution (senders/receivers), hazard_pointer, rcu — крупнейшее добавление ещё не ратифицировано, но набор фич уже заморожен.Static reflection, std::execution (senders/receivers), hazard_pointer, rcu — the largest addition isn't ratified yet, but the feature set is already frozen.
Не проходить стандарт целиком за раз — один-два файла за присест, пока не станет скучно узнавать материал (тогда переходить к следующему стандарту).Don't go through a whole standard in one sitting — one or two files per session, until the material stops feeling fresh (then move to the next standard).
Фичи поздних стандартов часто — доводка или альтернатива более ранним (например, structured bindings в C++17 снимает часть боли std::tie из C++11) — двигаться по порядку выхода стандартов важнее, чем по личному интересу.Features from later standards are often a refinement of, or an alternative to, earlier ones (for instance, structured bindings in C++17 relieve some of the pain of C++11's std::tie) — following the standards' release order matters more than following personal interest.
Если фича здесь пересекается с существующими шпаргалками (cpp_concurrency.md, cpp_ts_extensions.md) — при случае свериться и обновить старый файл, а не дублировать знание молча.If a feature here overlaps with an existing cheat sheet (cpp_concurrency.md, cpp_ts_extensions.md) — cross-check and update the old file when the opportunity arises, rather than silently duplicating the knowledge.
формат страницы фичиthe feature-page format
Что / зачем / как под капотом / пример / грабли / связанные фичи / внешние ссылки — единый скелет для каждого файла, чтобы можно было листать не задумываясь о структуре, только о содержании.What / why / how under the hood / example / gotchas / related features / external links — the same skeleton for every file, so pages can be flipped through without thinking about structure, only content.
Внешние ссылки — только на первоисточники: cppreference.com, тексты предложений комитета (wg21.link), изредка блоги авторов фичи. Никаких SEO-агрегаторов.External links go only to primary sources: cppreference.com, committee proposal texts (wg21.link), occasionally a feature author's blog. No SEO aggregators.