is_pointer, classe
Teste si le type est un pointeur.
Syntaxe
template <class Ty>
struct is_pointer;
Paramètres
Ty
Type à interroger.
Notes
Une instance du prédicat de type a la valeur true si le type Ty est un pointeur vers void
, un pointeur vers un objet ou un pointeur vers une fonction, ou une cv-qualified
forme d’une d’entre elles, sinon elle contient false. Notez que la is_pointer
valeur est false si Ty est un pointeur vers un membre ou un pointeur vers une fonction membre.
Exemple
// std__type_traits__is_pointer.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>
struct trivial
{
int val;
};
int main()
{
std::cout << "is_pointer<trivial> == " << std::boolalpha
<< std::is_pointer<trivial>::value << std::endl;
std::cout << "is_pointer<int trivial::*> == " << std::boolalpha
<< std::is_pointer<int trivial::*>::value << std::endl;
std::cout << "is_pointer<trivial *> == " << std::boolalpha
<< std::is_pointer<trivial *>::value << std::endl;
std::cout << "is_pointer<int> == " << std::boolalpha
<< std::is_pointer<int>::value << std::endl;
std::cout << "is_pointer<int *> == " << std::boolalpha
<< std::is_pointer<int *>::value << std::endl;
return (0);
}
is_pointer<trivial> == false
is_pointer<int trivial::*> == false
is_pointer<trivial *> == true
is_pointer<int> == false
is_pointer<int *> == true
Spécifications
Header :<type_traits>
Espace de noms : std
Voir aussi
<type_traits>
is_member_pointer, classe
is_reference, classe