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) noexcept
 
template<typename _Up , typename = _Require<is_pointer<pointer>, is_convertible<_Up*, pointer>, __is_derived_Tp<_Up>>>
 unique_ptr (_Up *__p)=delete
 
 unique_ptr (pointer __p, typename conditional< is_reference< deleter_type >::value, deleter_type, const deleter_type & >::type __d) noexcept
 
 unique_ptr (pointer __p, typename remove_reference< deleter_type >::type &&__d) noexcept
 
 unique_ptr (unique_ptr &&__u) noexcept
 
constexpr unique_ptr (nullptr_t) noexcept
 
template<typename _Up , typename _Ep , typename = _Require<__safe_conversion<_Up, _Ep>, typename conditional<is_reference<_Dp>::value, is_same<_Ep, _Dp>, is_convertible<_Ep, _Dp>>::type >>
 unique_ptr (unique_ptr< _Up, _Ep > &&__u) noexcept
 
 unique_ptr (const unique_ptr &)=delete
 
template<typename _Up , typename = _Require<is_pointer<pointer>, is_convertible<_Up*, pointer>, __is_derived_Tp<_Up>>>
 unique_ptr (_Up *, typename conditional< is_reference< deleter_type >::value, deleter_type, const deleter_type & >::type)=delete
 
template<typename _Up , typename = _Require<is_pointer<pointer>, is_convertible<_Up*, pointer>, __is_derived_Tp<_Up>>>
 unique_ptr (_Up *, typename remove_reference< deleter_type >::type &&)=delete
 
pointer get () const noexcept
 
deleter_type & get_deleter () noexcept
 
const deleter_type & get_deleter () const noexcept
 
 operator bool () const noexcept
 
unique_ptroperator= (unique_ptr &&__u) noexcept
 
template<typename _Up , typename _Ep >
enable_if< __safe_conversion< _Up, _Ep >::value, unique_ptr & >::type operator= (unique_ptr< _Up, _Ep > &&__u) noexcept
 
unique_ptroperator= (nullptr_t) noexcept
 
unique_ptroperator= (const unique_ptr &)=delete
 
std::add_lvalue_reference< element_type >::type operator[] (size_t __i) const
 
pointer release () noexcept
 
void reset () noexcept
 
void reset (pointer __p) noexcept
 
template<typename _Up , typename = _Require<is_pointer<pointer>, is_convertible<_Up*, pointer>, __is_derived_Tp<_Up>>>
void reset (_Up *)=delete
 
void swap (unique_ptr &__u) noexcept
 

Detailed Description

template<typename _Tp, typename _Dp>
class std::unique_ptr< _Tp[], _Dp >

20.7.1.3 unique_ptr for array objects with a runtime length

Definition at line 282 of file unique_ptr.h.


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