libstdc++: shared_ptr_base.h File Reference (original) (raw)

Functions

template<typename _Tp , _Lock_policy _Lp = __default_lock_policy, typename _Alloc , typename... _Args>

__shared_ptr< _Tp, _Lp >

std::__allocate_shared (const _Alloc &__a, _Args &&... __args)

template<typename _Tp , _Lock_policy _Lp = __default_lock_policy, typename... _Args>

__shared_ptr< _Tp, _Lp >

std::__make_shared (_Args &&... __args)

void

std::__throw_bad_weak_ptr ()

template<typename _Tp , typename _Tp1 , _Lock_policy _Lp>

__shared_ptr< _Tp, _Lp >

std::const_pointer_cast (const __shared_ptr< _Tp1, _Lp > &__r) noexcept

template<typename _Tp , typename _Tp1 , _Lock_policy _Lp>

__shared_ptr< _Tp, _Lp >

std::dynamic_pointer_cast (const __shared_ptr< _Tp1, _Lp > &__r) noexcept

template<typename _Tp , typename _Up , _Lock_policy _Lp>

strong_ordering

std::operator<=> (const __shared_ptr< _Tp, _Lp > &__a, const __shared_ptr< _Up, _Lp > &__b) noexcept

template<typename _Tp , _Lock_policy _Lp>

strong_ordering

std::operator<=> (const __shared_ptr< _Tp, _Lp > &__a, nullptr_t) noexcept

template<typename _Tp , _Lock_policy _Lp>

bool

std::operator== (const __shared_ptr< _Tp, _Lp > &__a, nullptr_t) noexcept

template<typename _Tp1 , typename _Tp2 , _Lock_policy _Lp>

bool

std::operator== (const __shared_ptr< _Tp1, _Lp > &__a, const __shared_ptr< _Tp2, _Lp > &__b) noexcept

template<typename _Tp , typename _Tp1 , _Lock_policy _Lp>

__shared_ptr< _Tp, _Lp >

std::reinterpret_pointer_cast (const __shared_ptr< _Tp1, _Lp > &__r) noexcept

template<typename _Tp , typename _Tp1 , _Lock_policy _Lp>

__shared_ptr< _Tp, _Lp >

std::static_pointer_cast (const __shared_ptr< _Tp1, _Lp > &__r) noexcept

template<typename _Tp , _Lock_policy _Lp>

void

std::swap (__shared_ptr< _Tp, _Lp > &__a, __shared_ptr< _Tp, _Lp > &__b) noexcept

template<typename _Tp , _Lock_policy _Lp>

void

std::swap (__weak_ptr< _Tp, _Lp > &__a, __weak_ptr< _Tp, _Lp > &__b) noexcept

This is an internal header file, included by other library headers. Do not attempt to use it directly. Instead, include .

Definition in file shared_ptr_base.h.