NIM 跨平台 C++ SDK
|
#include <ne_stl_smart_ptr.h>
Public 类型 | |
using | element_type = std::remove_extent_t<T> |
Public 成员函数 | |
_shared_ptr () | |
_shared_ptr (T *data) | |
_shared_ptr (std::nullptr_t) | |
_shared_ptr (const _shared_ptr &sp) | |
template<class D > | |
_shared_ptr (const _shared_ptr< D > &sp) | |
_shared_ptr (const _weak_ptr< T > &wp) | |
~_shared_ptr () | |
_shared_ptr & | operator= (const _shared_ptr &sp) |
_shared_ptr & | operator= (std::nullptr_t) |
operator bool () const | |
bool | operator== (std::nullptr_t) const |
bool | operator!= (std::nullptr_t) const |
T * | get () const |
T * | operator-> () const |
T & | operator* () const |
void | reset () |
void | reset (T *data) |
Private 成员函数 | |
void | dec_shared_count () |
Private 属性 | |
T * | data_ {nullptr} |
nstd::cblock * | cblock_ {nullptr} |
void(* | release_ )(T *&pdata) |
void(* | release_block_ )(nstd::cblock *&pdata) |
友元 | |
template<class TObj > | |
class | _weak_ptr |
template<class TObj > | |
class | _shared_ptr |
using nstd::_shared_ptr< T >::element_type = std::remove_extent_t<T> |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
inlineprivate |
|
inlineprivate |