哈希指针作为 C++ STL 中 unordered_map 的键

问题描述 投票:0回答:1

我发布了一个类似的问题,关于在 C++ STL 中使用指针作为映射上的键。当用作键时,指针如何在 unordered_maps 中进行哈希处理。更具体地说,如果我定义:

std::unordered_map< CustomClass*, int > foo;

默认的 C++ std::hash 实现可以处理这些指针吗?使用安全吗?这是好的做法吗?

c++ hash stl unordered-map
1个回答
30
投票

std::hash<T*>
已定义,但其操作方式的细节取决于实现。使用它肯定是安全的,我认为这是一个很好的做法 - 只要它是您需要作为键的指针,而不是对象内容本身。

© www.soinside.com 2019 - 2024. All rights reserved.