add_pointer Sınıfı
Belirtilen türden bir işaretçi türü sağlar.
Sözdizimi
template <class T>
struct add_pointer;
template <class T>
using add_pointer_t = typename add_pointer<T>::type;
Parametreler
T
Değiştirilecek tür.
Açıklamalar
Üye typedef
type
, ile remove_reference<T>::type*
aynı türe adlar. Diğer ad add_pointer_t
, öğesine typedef
type
erişmek için bir kısayoldur.
Başvurudan işaretçi yapmak geçersiz olduğundan, add_pointer
işaretçi türü yapmadan önce başvuruyu (varsa) belirtilen türden kaldırır. Sonuç olarak, türün bir başvuru olup olmadığı konusunda endişelenmeden ile add_pointer
bir tür kullanabilirsiniz.
Örnek
Aşağıdaki örnek, bir türün bu add_pointer
türe yönelik bir işaretçiyle aynı olduğunu gösterir.
#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 *
Gereksinimler
Üst Bilgi:<type_traits>
Ad alanı: std