home | help
std::experi...observer_ptr(3)  C++ Standard Libary std::experi...observer_ptr(3)

NAME
     std::experimental::observer_ptr - std::experimental::observer_ptr

Synopsis
	Defined in header <experimental/memory>
	template< class W >			 (library fundamentals TS v2)
	class observer_ptr;

	std::experimental::observer_ptr  is  a	non-owning pointer, or observer.
     The observer
	stores a pointer to a second object, known as the watched object. An ob-
     server_ptr
	may also have no watched object.

	An observer is not responsible in any way for the watched object;  there
     is no
	inherent relationship between an observer and the object it watches.

	It is intended as a near drop-in replacement for raw pointer types, with
     the
	advantage  that,  as  a  vocabulary  type, it indicates its intended use
     without need for
	detailed analysis by code readers.

	Specializations of observer_ptr satisfy  the  requirements  of	CopyCon-
     structible and
	CopyAssignable.

Type requirements
	-
	W shall not be a reference type, but may be an incomplete type.

Member types
	Member type  Definition
	element_type W, the type of the object watched by this observer_ptr

Member functions
	constructor	       constructs a new observer_ptr
			       (public member function)
	destructor	       destructs an observer_ptr
	(implicitly declared)  (public member function)
	operator=		implicitly declared copy and move assignment op-
     erators that
	(implicitly declared)  assign the stored pointer
			       (public member function)

Modifiers
			       returns a pointer to the watched object and stops
     watching
	release 	       the object
			       (public member function)
	reset		       replaces the watched object
			       (public member function)
	swap		       swaps the watched objects
			       (public member function)

Observers
	get		       returns a pointer to the watched object
			       (public member function)
	operator bool	       checks if there is an associated watched object
			       (public member function)
	operator*	       dereferences pointer to the watched object
	operator->	       (public member function)

Conversions
	operator  element_type*  explicit  conversion  function  to  the  stored
     pointer
			       (public member function)

Non-member functions
								 creates  an ob-
     server_ptr
	make_observer						 that watches an
     object
								 (function  tem-
     plate)
	operator==
	operator!=						 compares to an-
     other
	operator<						 observer_ptr or
     with
	operator<=						 nullptr
	operator>						  (function tem-
     plate)
	operator>=
								 specializes the
     swap
	std::experimental::swap(std::experimental::observer_ptr) algorithm
								 (function  tem-
     plate)

Helper classes
	std::hash<std::experimental::observer_ptr> hash support for observer_ptr
						   (class  template  specializa-
     tion)

Example
	 This section is incomplete
	 Reason: no example

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10	   std::experi...observer_ptr(3)

home | help