is_compound Class
Verificare se il tipo specificato non è fondamentale.
template<class Ty>
struct is_compound;
Parametri
- Ty
Il tipo da eseguire la query.
Note
Un'istanza del predicato del tipo utilizza false se il tipo di Ty è un tipo fondamentale ovvero se is_fundamental<Ty> utilizza true); in caso contrario, utilizza true.Pertanto, il predicato utilizza true se Ty è un tipo di matrice, un tipo di funzione, un puntatore a void o un oggetto o una funzione, un riferimento, classe, unione, enumerazione, o un puntatore a un membro di classe non statico, o un form cv-qualificato uno di essi.
Esempio
// 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);
}
Requisiti
intestazione: <type_traits>
Spazio dei nomi: deviazione standard