Перейти до вмісту

C++26

Очікує на перевірку
Матеріал з Вікіпедії — вільної енциклопедії.

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_function
  • std::submdspan()
  • <debugging>: Підтримка відлагодження
  • <linalg>: інтерфейс лінійної алгебри на базі BLAS
  • Додано протокол кортежів до std::complex
  • views::concat
  • Конкатенація рядків та рядкових представлень
  • std::ranges::generate_random
  • Друк пустих рядків з std::println()
  • std::formatter<std::filesystem::path>

Посилання

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. Working Draft, Standard for Programming Language C++ (PDF). Open Standards. ISO/IEC. 16 квітня 2024.