Spec-Zone.ru › C++

Именованные требования C++: UnaryTypeTrait (начиная с C++11)

UnaryTypeTrait — это шаблон класса, описывающий свойство параметра типа шаблона с помощью специализации std::integral_constant (обычно std::bool_constant).

Требования

  • DefaultConstructible и CopyConstructible.
  • Принимает один параметр типа шаблона (дополнительные параметры шаблона необязательны и допускаются).
  • Публично и однозначно наследуется от специализации std::integral_constant, называемой его базовой характеристикой.
  • Имена членов базовой характеристики не скрыты и доступны однозначно.

Стандартная библиотека

Все следующие характеристики типов удовлетворяют требованиям UnaryTypeTrait:

  • Основные категории типов
  • Составные категории типов
  • Свойства типов
  • Поддерживаемые операции
  • Запросы свойств

Следующие шаблоны классов стандартной библиотеки также удовлетворяют требованиям UnaryTypeTrait.

integral_constant
(C++11)
константа времени компиляции указанного типа с заданным значением
(шаблон класса)
negation
(C++17)
метафункция логического НЕ
(шаблон класса)
std::tuple_size<std::tuple>
(C++11)
получает размер

tuple
(специализация шаблона класса)

std::tuple_size<std::array>
(C++11)
получает размер array
(специализация шаблона класса)
std::tuple_size<std::pair>
(C++11)
получает размер pair
(специализация шаблона класса)
variant_sizevariant_size_v
(C++17)
получает во время компиляции размер списка альтернатив variant
(шаблон класса) (шаблон переменной)
is_bind_expression
(C++11)
указывает, что объект является выражением std::bind или может использоваться в качестве такого выражения
(шаблон класса)
is_placeholder
(C++11)
указывает, что объект является стандартным заполнителем или может использоваться в качестве такового
(шаблон класса)
is_execution_policy
(C++17)
проверяет, представляет ли класс политику выполнения
(шаблон класса)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/named_req/UnaryTypeTrait

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API