名前空間
変種
操作

std::hash(std::shared_ptr)

提供: cppreference.com
< cpp‎ | memory‎ | shared ptr
 
 
 
動的メモリ管理
未初期化記憶域
(C++17)
ガベージコレクションサポート
その他
(C++20)
(C++11)
(C++11)
C のライブラリ
低水準のメモリ管理
 
 
template<class T> struct hash<shared_ptr<T>>;
(C++11およびそれ以降)

std::hashstd::shared_ptr<T> に対するテンプレート特殊化は、ユーザが std::shared_ptr<T> 型のオブジェクトのハッシュを取得することを可能とします。

指定された std::shared_ptr<T> p に対して、この特殊化は以下が成り立つことを保証します。

std::hash<std::shared_ptr<T>>()(p) == std::hash<T*>()(p.get())

(C++17以前)

std::hash<std::shared_ptr<T>>()(p) == std::hash<typename std::shared_ptr<T>::element_type*>()(p.get())

(C++17およびそれ以降)

[編集]

[編集] 関連項目

(C++11)
ハッシュ関数オブジェクト
(クラステンプレート) [edit]