C++26
| Версії мови програмування C++ |
|---|
C++26 — неформальна назва наступної версії міжнародного стандарту ISO/IEC 14882 мови програмування C++, яка прийде на заміну версії C++23. Остаточний проєкт стандарту отримав код N4981[1]
Особливості
Зміни, прийняті в C++26, включають:
Мова
- Необчислені рядки
- Додавання
@,$і`до базового набору символівconstexprприведення зvoid - Повідомлення, створені користувачем, для
static_assert - Змінні-заповнювачі без імені (англ. placeholder variables with no name)
- Індексація параметрів (англ. pack indexing) [1]
- Атрибути для структурованих прив’язок (англ. attributes for structured bindings)
- Помилкова поведінка для неініціалізованих зчитувань
= delete(“reason”);- Варіативні друзі (англ. variadic friends)
Бібліотека
- Підтримка хешування для класів значень
std::chrono std::is_within_lifetime- Нативні дескриптори у файлових потоках
- Інтерфейс до string streams з
std::string_view - Інтерфейс до
std::bitsetзstd::string_view constexprдля<cmath>та<complex>- Додано нові префікси одиниць:
std::quecto,std::ronto,std::ronnaтаstd::quetta std::copyable_functionstd::submdspan()<debugging>: Підтримка відлагодження<linalg>: інтерфейс лінійної алгебри на базі BLAS- Додано протокол кортежів до
std::complex views::concat- Конкатенація рядків та рядкових представлень
std::ranges::generate_random- Друк пустих рядків з
std::println() std::formatter<std::filesystem::path>
Посилання
Вікіпідручник має книгу на тему
Примітки
- ↑ Working Draft, Standard for Programming Language C++ (PDF). Open Standards. ISO/IEC. 16 квітня 2024.