bits/shared_ptr.h File Reference

Go to the source code of this file.

## Classes

class | std::enable_shared_from_this< _Tp >
struct | std::hash< shared_ptr< _Tp > >
struct | std::owner_less< shared_ptr< _Tp > >
struct | std::owner_less< void >
struct | std::owner_less< weak_ptr< _Tp > >
class | std::shared_ptr< _Tp >
class | std::weak_ptr< _Tp >

## Namespaces

| std

## Macros

#define | __cpp_lib_enable_shared_from_this

## Functions

template<typename _Tp , typename _Alloc , typename... _Args>
shared_ptr< _Tp > | std::allocate_shared (const _Alloc &__a, _Args &&... __args)
template<typename _Tp , typename _Up >
shared_ptr< _Tp > | std::const_pointer_cast (const shared_ptr< _Up > &__r) noexcept
template<typename _Tp , typename _Up >
shared_ptr< _Tp > | std::dynamic_pointer_cast (const shared_ptr< _Up > &__r) noexcept
template<typename _Del , typename _Tp , _Lock_policy _Lp>
_Del * | std::get_deleter (const __shared_ptr< _Tp, _Lp > &__p) noexcept
template<typename _Del , typename _Tp >
_Del * | std::get_deleter (const shared_ptr< _Tp > &__p) noexcept
template<typename _Tp , typename... _Args>
shared_ptr< _Tp > | std::make_shared (_Args &&... __args)
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator!= (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator!= (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator!= (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator< (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator< (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator< (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Ch , typename _Tr , typename _Tp , _Lock_policy _Lp>
std::basic_ostream< _Ch, _Tr > & | std::operator<< (std::basic_ostream< _Ch, _Tr > &__os, const __shared_ptr< _Tp, _Lp > &__p)
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator<= (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator<= (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator<= (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator== (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator== (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator== (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator> (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator> (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator> (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up >
_GLIBCXX_NODISCARD bool | std::operator>= (const shared_ptr< _Tp > &__a, const shared_ptr< _Up > &__b) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator>= (const shared_ptr< _Tp > &__a, nullptr_t) noexcept
template<typename _Tp >
_GLIBCXX_NODISCARD bool | std::operator>= (nullptr_t, const shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up >
shared_ptr< _Tp > | std::static_pointer_cast (const shared_ptr< _Up > &__r) noexcept
template<typename _Tp >
void | std::swap (shared_ptr< _Tp > &__a, shared_ptr< _Tp > &__b) noexcept
template<typename _Tp >
void | std::swap (weak_ptr< _Tp > &__a, weak_ptr< _Tp > &__b) noexcept

## Detailed Description

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

Definition in file bits/shared_ptr.h.