◐ Shell
clean mode source ↗

std::hash(std::shared_ptr) - cppreference.com

提供: cppreference.com

<tbody> </tbody>

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以上)

関連項目