std::add_pointer

From cppreference.com
< cpp‎ | types
 
 
 
Type support
Basic types
Fundamental types
Fixed width integer types (C++11)
Numeric limits
C numeric limits interface
Runtime type information
Type traits
Primary type categories
(C++11)
(C++14)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Type properties
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Supported operations
Relationships and property queries
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Type modifications
(C++11)(C++11)(C++11)
(C++11)(C++11)(C++11)
(C++11)
(C++11)
(C++11)
add_pointer
(C++11)
(C++11)
Type transformations
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Type trait constants
 
Defined in header <type_traits>
template< class T >
struct add_pointer;
(since C++11)

Provides the member typedef type which is the type T*. If T is a reference type, then type is a pointer to the referred type.

Contents

[edit] Member types

Name Definition
type pointer to T or to the type referenced by T

[edit] Helper types

template< class T >
using add_pointer_t = typename add_pointer<T>::type;
(since C++14)

[edit] Possible implementation

template< class T >
struct add_pointer {
    typedef typename std::remove_reference<T>::type* type;
};

[edit] Example

[edit] See also

(C++11)
checks if a type is a pointer type
(class template)
removes pointer from the given type
(class template)