Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wandelt einen angegebenen Typ in einen Zeiger auf den Typ um.
Syntax
template <class T>
struct add_pointer;
template <class T>
using add_pointer_t = typename add_pointer<T>::type;
Parameter
T
Der zu ändernde Typ.
Hinweise
Das Element typedef type benennt denselben Typ wie remove_reference<T>::type*. Der Alias add_pointer_t ist eine Verknüpfung für den Zugriff auf das Element typedef type.
Da es unzulässig ist, einen Zeiger aus einem Verweis zu erstellen, wird der Verweis durch add_pointer ggf. vom angegebenen Typ entfernt, bevor der Zeiger auf den Typ erstellt wird. Daher können Sie einen Typ mit add_pointer verwenden, ohne sich überlegen zu müssen, ob der Typ ein Verweis ist.
Beispiel
Das folgende Beispiel zeigt, dass add_pointer eines Typs mit einem Zeiger auf diesen Typ identisch ist.
#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);
}
add_pointer_t<int> == int *
Anforderungen
Header:<type_traits>
Namespace: std