GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
std::experimental::shared_ptr(3) C++ Standard Libary std::experimental::shared_ptr(3)

std::experimental::shared_ptr - std::experimental::shared_ptr


Defined in header <experimental/memory>
template< class T > class shared_ptr; (library fundamentals TS)


std::experimental::shared_ptr is a modified version of std::shared_ptr that adds
support for arrays.


Member type Definition
element_type std::remove_extent_t<T>

Member functions


constructor constructs new shared_ptr
(public member function)


get returns the stored pointer
(public member function)
operator* dereferences the stored pointer
operator-> (public member function)
operator[] provides index access to the array
(public member function)

Non-member functions


static_pointer_cast applies static_cast, dynamic_cast, const_cast, or
dynamic_pointer_cast reinterpret_cast to the stored pointer
const_pointer_cast (function template)
reinterpret_pointer_cast


hash support for
std::hash<std::experimental::shared_ptr> std::experimental::shared_ptr
(class template specialization)

Members and non-members identical to std::shared_ptr

Member functions


The following member functions work with std::experimental::shared_ptr instead of
std::shared_ptr and std::experimental::weak_ptr instead of std::weak_ptr. The
behavior is otherwise identical.


destructor destructs the owned object if no more shared_ptrs link to it
(public member function of std::shared_ptr<T>)
operator= assigns the shared_ptr
(public member function of std::shared_ptr<T>)


reset replaces the managed object
(public member function of std::shared_ptr<T>)
swap swaps the managed objects
(public member function of std::shared_ptr<T>)


returns the number of shared_ptr objects referring to the same managed
use_count object
(public member function of std::shared_ptr<T>)
unique checks whether the managed object is managed only by the current
(until C++20) shared_ptr instance
(public member function of std::shared_ptr<T>)
operator bool checks if the stored pointer is not null
(public member function of std::shared_ptr<T>)
owner_before provides owner-based ordering of shared pointers
(public member function of std::shared_ptr<T>)

Non-member functions


These non-member functions are declared in the std::experimental namespace, and work
with std::experimental::shared_ptr rather than std::shared_ptr, but otherwise
behaves identically to the corresponding C++14 function.


make_shared creates a shared pointer that manages a new object
make_shared_for_overwrite (function template)
(C++20)
allocate_shared creates a shared pointer that manages a new object
allocate_shared_for_overwrite allocated using an allocator
(C++20) (function template)
get_deleter returns the deleter of specified type, if owned
(function template)
operator==
operator!=
operator<
operator<=
operator>
operator>= compares with another shared_ptr or with nullptr
operator<=> (function template)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(C++20)
outputs the value of the stored pointer to an output
operator<< stream
(function template)
std::swap(std::shared_ptr) specializes the std::swap algorithm
(C++11) (function template)


std::atomic_is_lock_free(std::shared_ptr)
std::atomic_load(std::shared_ptr)
std::atomic_load_explicit(std::shared_ptr)
std::atomic_store(std::shared_ptr)
std::atomic_store_explicit(std::shared_ptr) specializes atomic
std::atomic_exchange(std::shared_ptr) operations for
std::atomic_exchange_explicit(std::shared_ptr) std::shared_ptr
std::atomic_compare_exchange_weak(std::shared_ptr) (function template)
std::atomic_compare_exchange_strong(std::shared_ptr)
std::atomic_compare_exchange_weak_explicit(std::shared_ptr)
std::atomic_compare_exchange_strong_explicit(std::shared_ptr)
(deprecated in C++20)


Helper class templates


These class templates are declared in the std::experimental namespace, and work with
std::experimental::shared_ptr and std::experimental::weak_ptr rather than
std::shared_ptr and std::weak_ptr, but otherwise behaves identically to the
corresponding C++14 class template.


owner_less provides mixed-type owner-based ordering of shared and weak
(C++11) pointers
(class template)
enable_shared_from_this allows an object to create a shared_ptr referring to itself
(C++11) (class template)


This section is incomplete
Reason: no example

2022.07.31 http://cppreference.com

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.