Provided by: libstdc++-4.9-doc_4.9.3-13ubuntu2_all bug

NAME

       Pointer_abstractions - Pointer_abstractions

SYNOPSIS

   Classes
       struct std::default_delete< _Tp >
       struct std::default_delete< _Tp[]>
       class std::enable_shared_from_this< _Tp >
       struct std::hash< shared_ptr< _Tp > >
       struct std::hash< unique_ptr< _Tp, _Dp > >
       struct std::owner_less< _Tp >
       struct std::owner_less< shared_ptr< _Tp > >
       struct std::owner_less< weak_ptr< _Tp > >
       struct std::pointer_traits< _Ptr >
       struct std::pointer_traits< _Tp * >
       class std::shared_ptr< _Tp >
       class std::unique_ptr< _Tp, _Dp >
       class std::unique_ptr< _Tp[], _Dp >
       class std::weak_ptr< _Tp >

   Functions
       template<typename _Tp1 , typename _Tp2 > void std::__enable_shared_from_this_helper (const
           __shared_count<> &__pn, const enable_shared_from_this< _Tp1 > *__pe, const _Tp2 *__px)
           noexcept
       template<typename _Tp , typename _Alloc , typename... _Args> shared_ptr< _Tp >
           std::allocate_shared (const _Alloc &__a, _Args &&...__args)
       template<typename _Tp , typename _Tp1 > shared_ptr< _Tp > std::const_pointer_cast (const
           shared_ptr< _Tp1 > &__r) noexcept
       template<typename _Tp , typename _Tp1 > shared_ptr< _Tp > std::dynamic_pointer_cast (const
           shared_ptr< _Tp1 > &__r) noexcept
       template<typename _Del , typename _Tp , _Lock_policy _Lp> _Del * std::get_deleter (const
           __shared_ptr< _Tp, _Lp > &__p) noexcept
       template<typename _Tp , typename... _Args> shared_ptr< _Tp > std::make_shared (_Args
           &&...__args)
       template<typename _Tp1 , typename _Tp2 > bool std::operator!= (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator!= (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator!= (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator!=
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator!= (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t) noexcept
       template<typename _Tp , typename _Dp > bool std::operator!= (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x) noexcept
       template<typename _Tp1 , typename _Tp2 > bool std::operator< (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator< (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator< (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator<
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator< (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t)
       template<typename _Tp , typename _Dp > bool std::operator< (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x)
       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 _Tp1 , typename _Tp2 > bool std::operator<= (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator<= (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator<= (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator<=
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator<= (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t)
       template<typename _Tp , typename _Dp > bool std::operator<= (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x)
       template<typename _Tp1 , typename _Tp2 > bool std::operator== (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator== (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator== (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator==
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator== (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t) noexcept
       template<typename _Tp , typename _Dp > bool std::operator== (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x) noexcept
       template<typename _Tp1 , typename _Tp2 > bool std::operator> (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator> (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator> (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator>
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator> (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t)
       template<typename _Tp , typename _Dp > bool std::operator> (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x)
       template<typename _Tp1 , typename _Tp2 > bool std::operator>= (const shared_ptr< _Tp1 >
           &__a, const shared_ptr< _Tp2 > &__b) noexcept
       template<typename _Tp > bool std::operator>= (const shared_ptr< _Tp > &__a, nullptr_t)
           noexcept
       template<typename _Tp > bool std::operator>= (nullptr_t, const shared_ptr< _Tp > &__a)
           noexcept
       template<typename _Tp , typename _Dp , typename _Up , typename _Ep > bool std::operator>=
           (const unique_ptr< _Tp, _Dp > &__x, const unique_ptr< _Up, _Ep > &__y)
       template<typename _Tp , typename _Dp > bool std::operator>= (const unique_ptr< _Tp, _Dp >
           &__x, nullptr_t)
       template<typename _Tp , typename _Dp > bool std::operator>= (nullptr_t, const unique_ptr<
           _Tp, _Dp > &__x)
       template<typename _Tp , typename _Tp1 > shared_ptr< _Tp > std::static_pointer_cast (const
           shared_ptr< _Tp1 > &__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
       template<typename _Tp , typename _Dp > void std::swap (unique_ptr< _Tp, _Dp > &__x,
           unique_ptr< _Tp, _Dp > &__y) noexcept

Detailed Description

Function Documentation

   template<typename _Tp , typename _Alloc , typename... _Args> shared_ptr<_Tp>
       std::allocate_shared (const _Alloc & __a, _Args &&... __args) [inline]
       Create an object that is owned by a shared_ptr.

       Parameters:
           __a An allocator.
           __args Arguments for the _Tp object's constructor.

       Returns:
           A shared_ptr that owns the newly created object.

       Exceptions:
           An exception thrown from _Alloc::allocate or from the constructor of _Tp.

       A copy of __a will be used to allocate memory for the shared_ptr and the new object.

       Definition at line 591 of file shared_ptr.h.

   template<typename _Del , typename _Tp , _Lock_policy _Lp> _Del* std::get_deleter (const
       __shared_ptr< _Tp, _Lp > & __p) [inline],  [noexcept]
       20.7.2.2.10 shared_ptr get_deleter

       Definition at line 76 of file shared_ptr.h.

       Referenced by std::unique_ptr< std::vector< bool > >::operator=(), std::unique_ptr< _Tp[],
       _Dp >::operator=(), std::unique_ptr< std::vector< bool > >::reset(), std::unique_ptr<
       _Tp[], _Dp >::reset(), std::unique_ptr< std::vector< bool > >::~unique_ptr(), and
       std::unique_ptr< _Tp[], _Dp >::~unique_ptr().

   template<typename _Tp , typename... _Args> shared_ptr<_Tp> std::make_shared (_Args &&...
       __args) [inline]
       Create an object that is owned by a shared_ptr.

       Parameters:
           __args Arguments for the _Tp object's constructor.

       Returns:
           A shared_ptr that owns the newly created object.

       Exceptions:
           std::bad_alloc,or an exception thrown from the constructor of _Tp.

       Definition at line 606 of file shared_ptr.h.

   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) [inline]
       20.7.2.2.11 shared_ptr I/O

       Definition at line 66 of file shared_ptr.h.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.