std::default_delete< _Tp[]> Struct Template Reference

Public Member Functions

constexpr default_delete () noexcept=default
template<typename _Up , typename = _Require<is_convertible<_Up(*)[], _Tp(*)[]>>>
 default_delete (const default_delete< _Up[]> &) noexcept
template<typename _Up >
enable_if< is_convertible< _Up(*)[], _Tp(*)[]>::value >::type operator() (_Up *__ptr) const

Detailed Description

template<typename _Tp>
struct std::default_delete< _Tp[]>

Specialization of default_delete for arrays, used by unique_ptr<T[]>

Definition at line 94 of file unique_ptr.h.

Constructor & Destructor Documentation

◆ default_delete() [1/2]

template<typename _Tp >
constexpr std::default_delete< _Tp[]>::default_delete ( )

Default constructor.

◆ default_delete() [2/2]

template<typename _Tp >
template<typename _Up , typename = _Require<is_convertible<_Up(*)[], _Tp(*)[]>>>
std::default_delete< _Tp[]>::default_delete ( const default_delete< _Up[]> &  )

Converting constructor.

Allows conversion from a deleter for arrays of another type, such as a const-qualified version of _Tp.

Conversions from types derived from _Tp are not allowed because it is undefined to delete[] an array of derived types through a pointer to the base type.

Definition at line 111 of file unique_ptr.h.

Member Function Documentation

◆ operator()()

template<typename _Tp >
template<typename _Up >
enable_if<is_convertible<_Up(*)[], _Tp(*)[]>::value>::type std::default_delete< _Tp[]>::operator() ( _Up *  __ptr) const

Calls delete[] __ptr

Definition at line 116 of file unique_ptr.h.

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