Namespaces
Variants

C++ named requirements: BinaryTypeTrait (since C++11)

From cppreference.net
C++ named requirements

Un BinaryTypeTrait est un modèle de classe qui décrit une relation entre ses deux paramètres de type de modèle avec une spécialisation std::integral_constant (généralement std::bool_constant ).

Exigences

  • DefaultConstructible et CopyConstructible .
  • Prend deux paramètres de type template (les paramètres template supplémentaires sont optionnels et autorisés).
  • Dérivé publiquement et sans ambiguïté d'une spécialisation de std::integral_constant , appelée sa caractéristique de base .
  • Les noms de membres de la caractéristique de base ne sont pas masqués et sont disponibles sans ambiguïté.

Bibliothèque standard

Les modèles de classe de la bibliothèque standard suivants satisfont BinaryTypeTrait :

(C++11)
vérifie si deux types sont identiques
(modèle de classe)
(C++11)
vérifie si un type est une base d'un autre type
(modèle de classe)
vérifie si un type est une base virtuelle d'un autre type
(modèle de classe)
vérifie si un type peut être converti en un autre type
(modèle de classe)
vérifie si deux types sont compatibles au niveau de la disposition
(modèle de classe)
vérifie si un type est une base interconvertible par pointeur (initiale) d'un autre type
(modèle de classe)
vérifie si un type peut être invoqué (comme par std::invoke ) avec les types d'arguments donnés
(modèle de classe)
vérifie si le type spécifié supporte la construction avec allocateur
(modèle de classe)