Partager via


add_pointer, classe

Crée un pointeur vers un type à partir d'un type spécifié.

template<class Ty>
    struct add_pointer;

template<class T>
using add_pointer_t = typename add_pointer<T>::type;

Paramètres

  • Ty
    Type à modifier.

Notes

Le type typedef de membre nomme le même type que remove_reference<T>::type*.

Comme il n'est pas valide de créer un pointeur à partir d'une référence, add_pointer supprime la référence, le cas échéant, du type spécifié avant de créer un pointeur vers un type. Par conséquent, vous pouvez utiliser un type avec add_pointer sans vous soucier de savoir si ce type est une référence.

Exemple

L'exemple suivant montre que l'objet add_pointer d'un type est le même qu'un pointeur vers ce type.

#include <type_traits> 
#include <iostream> 
 
int main() 
    { 
    std::add_pointer_t<int> *p = (int **)0; 
 
    p = p;  // to quiet "unused" warning 
    std::cout << "add_pointer_t<int> == " 
        << typeid(*p).name() << std::endl; 
 
    return (0); 
    } 
 
  

Configuration requise

En-tête : <type_traits>

Espace de noms : std

Voir aussi

Référence

<type_traits>

remove_pointer, classe

Autres ressources

<type_traits> membres