Поддержка типов (базовые типы, RTTI)
См. также обзор системы типов и фундаментальные типы, определённые языком.
Дополнительные базовые типы и макросы
Определено в заголовке <cstddef> |
|
|---|---|
беззнаковый целочисленный тип, возвращаемый оператором sizeof (псевдоним типа) |
|
| знаковый целочисленный тип, возвращаемый при вычитании двух указателей (псевдоним типа) |
|
|
(C++11) | тип литерала нулевого указателя nullptr (псевдоним типа) |
| определяемая реализацией константа нулевого указателя (макроконстанта) |
|
|
(C++11) | тривиальный тип с требованием к выравниванию не меньшим, чем у любого другого скалярного типа (псевдоним типа) |
| смещение в байтах от начала типа со стандартным расположением до указанного члена (функциональный макрос) |
|
|
(C++17) | тип байта (перечисление) |
Определено в заголовке <cstdbool>(устарело) (до C++20) |
|
|---|---|
Определено в заголовке <stdbool.h> |
|
|
__bool_true_false_are_defined
(C++11)(устарело) | макроконстанта совместимости с C, раскрывается в целочисленный литерал 1 (макроконстанта) |
Определено в заголовке <cstdalign>(устарело) (до C++20) |
|
Определено в заголовке <stdalign.h> |
|
|
__alignas_is_defined
(C++11)(устарело) | макроконстанта совместимости с C, раскрывается в целочисленный литерал 1 (макроконстанта) |
|
__alignof_is_defined
(C++11)(устарело) | макроконстанта совместимости с C, раскрывается в целочисленный литерал 1 (макроконстанта) |
Целочисленные типы фиксированной ширины (начиная с C++11)
Типы с плавающей точкой фиксированной ширины (начиная с C++23)
Числовые пределы
Определено в заголовке <limits> |
|
|---|---|
| предоставляет интерфейс для получения свойств всех фундаментальных числовых типов (шаблон класса) |
|
Интерфейс пределов числовых типов C
Идентификация типа во время выполнения
Определено в заголовке <typeinfo> |
|
|---|---|
| содержит информацию о типе; класс, возвращаемый оператором typeid (класс) |
|
| исключение, выбрасываемое, если аргумент в выражении typeid равен null (класс) |
|
исключение, выбрасываемое при некорректном выражении dynamic_cast, то есть при неудачном приведении типа ссылки (класс) |
|
Определено в заголовке <typeindex> |
|
|
(C++11) | обёртка над объектом type_info, которую можно использовать в качестве индекса в ассоциативных и неупорядоченных ассоциативных контейнерах (класс) |
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.
| DR | Применён к | Поведение согласно опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 4036 | C++11 |
__alignof_is_defined недостаточно подробно описан в стандарте C++ | описан и объявлен устаревшим |
См. также
| Библиотека свойств типов и метапрограммирования | |
| Документация по C для библиотеки поддержки типов |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/types