qdi*_*dii 7 c++ hash standard-library optional c++14
来自cppreference的此页面提到std::hash了专门用于std::optional但未指定对象脱离时的行为的页面.我可以想到不同的行为:
std::bad_optional_access,与之相符std::optional::valuestd::optional<T>脱离对象返回相同的哈希值,这样2个脱离对象将具有相同的哈希值.std::optional<std::hash<std::optional<T>>>C++ 14 CD在[optional.hash]/3中说:
对于
o类型的对象optional<T>,ifbool(o) == true,hash<optional<T>>()(o)将评估为与...相同的值hash<T>()(*o).
所以我会说它没有指定哈希函数为一个脱离对象返回的内容.
| 归档时间: |
|
| 查看次数: |
592 次 |
| 最近记录: |