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