Aracılığıyla paylaş


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 typeeriş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

Ayrıca bkz.

<type_traits>
remove_pointer Sınıfı