Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::experi...observer_ptr(3) C++ Standard Libarystd::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  ob-
       server. The observer
	  stores a pointer to a	second object, known as	the watched object. An
       observer_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
       operators 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  ob-
       ject
				 (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   a
       observer_ptr that
	  make_observer						    watches an
       object
								   (function
       template)
	  operator==
	  operator!=						   compares to
       another
	  operator<							   ob-
       server_ptr or with
	  operator<=						   nullptr
	  operator>						     (function
       template)
	  operator>=
								   specializes
       the swap
	  std::experimental::swap(std::experimental::observer_ptr) algorithm
								   (function
       template)

Helper classes
	  std::hash<std::experimental::observer_ptr>  hash  support  for   ob-
       server_ptr
						     (class  template special-
       ization)

Example
	   This	section	is incomplete
	   Reason: no example

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

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::experimental::observer_ptr&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help