Namespaces
Variants

std:: owner_hash

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
Definiert im Header <memory>
struct owner_hash ;
(seit C++26)

Dieses Funktionsobjekt ermöglicht eine besitzerbasierte (im Gegensatz zu wertbasierter) Hash-Erstellung sowohl für std::weak_ptr als auch für std::shared_ptr .

Inhaltsverzeichnis

Verschachtelte Typen

Geschachtelter Typ Definition
is_transparent unspecified

Memberfunktionen

operator()
berechnet den Hash des Shared-Ownership-Zeigers
(Funktion)

std::owner_hash:: operator()

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

Entspricht return key. owner_hash ( ) ; .

Parameter

key - zu hashender Shared-Ownership-Zeiger

Rückgabewert

Ein Hash-Wert, der für jedes std::shared_ptr - oder std::weak_ptr -Objekt mit gleichem Ownership identisch ist.

Hinweise

Feature-Test Makro Wert Std Funktion
__cpp_lib_smart_ptr_owner_equality 202306L (C++26) Ermöglicht die Verwendung von std::shared_ptr und std::weak_ptr als Schlüssel in ungeordneten assoziativen Containern

Siehe auch

(C++26)
bietet owner-basiertes Hashing von Shared Pointern
(öffentliche Elementfunktion von std::shared_ptr<T> )
(C++26)
bietet owner-basiertes Hashing von Weak Pointern
(öffentliche Elementfunktion von std::weak_ptr<T> )