Концепции
Идея концепций перекликается с понятием интерфейсов и является описанием требований к сущностям стандартной библиотеки С++.
Базовые концепции
DefaultConstructible
определяет наличие конструктора по умолчанию.
MoveConstructible
объект строится передачей владения. (конструктор перемещения X(X&&) C++11)
CopyConstructible
определяет наличие конструктора копирования.
MoveAssignable
определяет наличие операции перемещения (X& operator=(X&&) C++11)
CopyAssignable
определяет наличие оператора копирования
Destructible
требует наличие деструктора
Концепции размещения
TriviallyCopyable
TrivialType
StandardLayoutType
PODType
Library-wide
EqualityComparable
оператор равенства
LessThanComparable
оператор упорядочения
Swappable
ValueSwappable
NullablePointer
Hash
Allocator
FunctionObject
наличие оператора круглые скобки (функтор)
Callable
Predicate
функтор, возвращающий логическое значение
BinaryPredicate
предикат с двумя параметрами. Например, операторы сравнения и упорядочения являются бинарными предикатами.
Compare
Last updated