Namespaces
Variants

std::experimental:: negation

From cppreference.net
Défini dans l'en-tête <experimental/type_traits>
template < class B >
struct negation ;
(1) (library fundamentals TS v2)

Forme la négation logique du trait de type B .

Le type negation < B > est un UnaryTypeTrait avec une caractéristique de base de std:: integral_constant < bool , ! bool ( B :: value ) > .

Table des matières

Paramètres du modèle

B - tout type tel que l'expression bool ( B :: value ) soit une expression constante valide

Modèle de variable d'assistance

template < class B >
constexpr bool negation_v = negation < B > :: value ;
(bibliothèque fondamentale TS v2)

Hérité de std:: integral_constant

Constantes membres

value
[static]
true si B a un membre ::value tel que ! bool ( B :: value ) est true , false sinon
(constante membre publique statique)

Fonctions membres

operator bool
convertit l'objet en bool , retourne value
(fonction membre publique)
operator()
(C++14)
retourne value
(fonction membre publique)

Types membres

Type Définition
value_type bool
type std:: integral_constant < bool , value >

Implémentation possible

template<class B>
struct negation : std::integral_constant<bool, !bool(B::value)> {};

Exemple

Voir aussi

(C++17)
métafonction NOT logique
(modèle de classe)