libstdc++
std::unique_ptr< _Tp, _Dp > Class Template Reference

Public Types

typedef _Dp deleter_type
 
typedef _Tp element_type
 
typedef _Pointer::type pointer
 

Public Member Functions

 unique_ptr (pointer __p)
 
 unique_ptr (pointer __p, typename std::conditional< std::is_reference< deleter_type >::value, deleter_type, const deleter_type & >::type __d)
 
 unique_ptr (pointer __p, typename std::remove_reference< deleter_type >::type &&__d)
 
constexpr unique_ptr (nullptr_t)
 
 unique_ptr (unique_ptr &&__u)
 
template<typename _Up , typename _Ep , typename = typename std::enable_if <std::is_convertible<typename unique_ptr<_Up, _Ep>::pointer, pointer>::value && !std::is_array<_Up>::value && ((std::is_reference<_Dp>::value && std::is_same<_Ep, _Dp>::value) || (!std::is_reference<_Dp>::value && std::is_convertible<_Ep, _Dp>::value))> ::type>
 unique_ptr (unique_ptr< _Up, _Ep > &&__u)
 
 unique_ptr (const unique_ptr &)=delete
 
pointer get () const
 
deleter_type & get_deleter ()
 
const deleter_type & get_deleter () const
 
 operator bool () const
 
std::add_lvalue_reference
< element_type >::type 
operator* () const
 
pointer operator-> () const
 
unique_ptroperator= (unique_ptr &&__u)
 
template<typename _Up , typename _Ep , typename = typename std::enable_if <std::is_convertible<typename unique_ptr<_Up, _Ep>::pointer, pointer>::value && !std::is_array<_Up>::value>::type>
unique_ptroperator= (unique_ptr< _Up, _Ep > &&__u)
 
unique_ptroperator= (nullptr_t)
 
unique_ptroperator= (const unique_ptr &)=delete
 
pointer release ()
 
void reset (pointer __p=pointer())
 
void swap (unique_ptr &__u)
 

Detailed Description

template<typename _Tp, typename _Dp = default_delete<_Tp>>
class std::unique_ptr< _Tp, _Dp >

20.7.12.2 unique_ptr for single objects.

Definition at line 88 of file unique_ptr.h.


The documentation for this class was generated from the following file: