Partager via


is_compound Class

Teste si le type spécifié n'est pas simple.

template<class Ty>
    struct is_compound;

Paramètres

  • Ty
    le type à l'interroger.

Notes

Une instance de l'attribut de type contient false si le type d' Ty est un type fondamental (autrement dit, si is_fundamental<Ty> contient true) ; sinon, elle gère true.Ainsi, l'attribut maintient true si Ty est un type de tableau, un type de fonction, un pointeur vers void ou un objet ou une fonction, une référence, une classe, une union, une énumération, ou un pointeur vers membre de classe non statique, ou un formulaire cv-qualifié de l'un d'eux.

Exemple

 

// std_tr1__type_traits__is_compound.cpp 
// compile with: /EHsc 
#include <type_traits> 
#include <iostream> 
 
struct trivial 
    { 
    int val; 
    }; 
 
int main() 
    { 
    std::cout << "is_compound<trivial> == " << std::boolalpha 
        << std::is_compound<trivial>::value << std::endl; 
    std::cout << "is_compound<int[]> == " << std::boolalpha 
        << std::is_compound<int[]>::value << std::endl; 
    std::cout << "is_compound<int()> == " << std::boolalpha 
        << std::is_compound<int()>::value << std::endl; 
    std::cout << "is_compound<int&> == " << std::boolalpha 
        << std::is_compound<int&>::value << std::endl; 
    std::cout << "is_compound<void *> == " << std::boolalpha 
        << std::is_compound<void *>::value << std::endl; 
    std::cout << "is_compound<int> == " << std::boolalpha 
        << std::is_compound<int>::value << std::endl; 
 
    return (0); 
    } 
 
  

Configuration requise

en-tête : <type_traits>

l'espace de noms : type

Voir aussi

Référence

<type_traits>

is_class Class

Autres ressources

<type_traits> membres