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

FreeBSD Manual Pages

  
 
  

home | help
std::owner_hash(3)	      C++ Standard Libary	    std::owner_hash(3)

NAME
       std::owner_hash - std::owner_hash

Synopsis
	  Defined in header <memory>
	  struct owner_hash;	      (since C++26)

	  This	function  object  provides  owner-based	 (as opposed to	value-
       based) hashing of
	  both std::weak_ptr and std::shared_ptr.

Member functions
	  operator() calculates	the hash of the	shared-ownership pointer
		     (function)

       std::owner_hash::operator()

	  template< class T >
	  std::size_t  operator()(  const  std::shared_ptr<T>&	key  )	 const
       (1) (since C++26)
	  noexcept;
	  template< class T >
	  std::size_t	operator()(   const   std::weak_ptr<T>&	 key  )	 const
       (2) (since C++26)
	  noexcept;

	  Equivalent to	return key.owner_hash();.

Parameters
	  key -	shared-ownership pointer to be hashed

Return value
	  A  hash  value  that	is  identical  for  any	  std::shared_ptr   or
       std::weak_ptr object
	  sharing the same ownership.

Notes
		  Feature-test macro	      Value    Std		  Fea-
       ture
							     Enabling  the use
       of
	  __cpp_lib_smart_ptr_owner_equality 202306L  (C++26)  std::shared_ptr
       and std::weak_ptr
							     as	 keys  in  un-
       ordered associative
							     containers

See also
	  owner_hash provides owner-based hashing of shared pointers
	  (C++26)    (public member function of	std::shared_ptr<T>)
	  owner_hash provides owner-based hashing of weak pointers
	  (C++26)    (public member function of	std::weak_ptr<T>)

http://cppreference.com		  2024.06.10		    std::owner_hash(3)

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

home | help