Bagikan melalui


Kelas add_pointer

Membuat pointer-to-type dari jenis tertentu.

Sintaks

template <class T>
struct add_pointer;

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

Parameter

T
Jenis yang akan dimodifikasi.

Keterangan

typedef type Anggota menamai jenis yang sama dengan remove_reference<T>::type*. Alias add_pointer_t adalah pintasan untuk mengakses anggota typedef type.

Karena tidak valid untuk membuat penunjuk dari referensi, add_pointer menghapus referensi, jika ada, dari jenis yang ditentukan sebelum membuat pointer-to-type. Akibatnya, Anda dapat menggunakan jenis tanpa add_pointer khawatir tentang apakah jenis tersebut adalah referensi.

Contoh

Contoh berikut menunjukkan bahwa add_pointer jenis sama dengan penunjuk ke jenis tersebut.

#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 *

Persyaratan

Header:<type_traits>

Namespace: std

Lihat juga

<type_traits>
Kelas remove_pointer