Поделиться через


Класс is_literal_type

Проверяет, можно ли использовать тип в качестве переменной constexpr, создавать его, использовать или возвращать из функций constexpr.

Синтаксис

template <class T>
struct is_literal_type;

Параметры

T
Запрашиваемый тип.

Замечания

Экземпляр предиката типа имеет значение true, если тип T является литеральным типом, в противном случае он содержит значение false. Тип литерала — это void, скалярный тип, ссылочный тип, массив типа литерала или тип класса литерала. Тип класса литерала — это тип класса, который имеет тривиальный деструктор, составной тип или по крайней мере один конструктор constexpr, отличный от копирования и перемещения, и все его базовые классы и нестатические элементы данных являются неизменяемыми типами литералов. Хотя литерал всегда имеет тип литерала, концепция типа литерала включает в себя все, что компилятор может вычислить в качестве constexpr во время компиляции.

Требования

Заголовок:<type_traits>

Пространство имен: std

См. также

<type_traits>