add_pointer クラス
指定した型のポインターから型を作成します。
template<class Ty>
struct add_pointer;
パラメーター
- Ty
変更する型。
解説
メンバー型定義の型名は remove_reference<T>::type* として同じ入力します。
参照からポインターを行うために自身が無効であるため add_pointer は指定された型のポインターから型を作成する前に参照がある場合削除します。その結果心配はありません。add_pointer の種類を使用すると型が参照であるかについて説明します。
使用例
次の例では型の add_pointer がその型へのポインターと同じであることを示します。
// std_tr1__type_traits__add_pointer.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>
int main()
{
std::add_pointer<int>::type *p = (int **)0;
p = p; // to quiet "unused" warning
std::cout << "add_pointer<int> == "
<< typeid(*p).name() << std::endl;
return (0);
}
必要条件
ヘッダー : <type_traits>
名前空間: std