add_pointer – třída
Vytvoří ukazatel na typ z určeného typu.
template<class Ty>
struct add_pointer;
template<class T>
using add_pointer_t = typename add_pointer<T>::type;
Parametry
- Ty
Typ, který chcete upravit.
Poznámky
Typ typedef členu pojmenovává stejný typ jako remove_reference<T>::type*.
Protože nelze vytvořit ukazatel z odkazu, add_pointer před vytvořením ukazatele na typ odebere odkaz (pokud existuje) ze zadaného typu.S klíčovým slovem add_pointer tak můžete použít typ, aniž byste si dělali starosti o to, zda je typ odkazem.
Příklad
Následující příklad ukazuje, že klíčové slovo add_pointer typu je stejné jako ukazatel na daný typ.
#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);
}
Požadavky
Hlavička: <type_traits>
Obor názvů: std