std::hash <std::variant>
| Defined in header <variant> |  |  | 
|---|---|---|
| template <class... Types> struct hash<std::variant<Types...>>; |  | (since C++17) | 
模板的专门化std::hash为std::variant模板允许用户获取variant物品。
专业化std::hash<std::variant<Types...>>已启用%28(参见std::hash29%std::hash<std::remove_const_t<Types>>...已启用,否则将禁用。
这种专门化的成员函数不能保证为NoOPTION。
模板参数
| Types | - | the types of the alternatives supported by the variant object | 
|---|
注记
不像std::hash<std::optional>,变体的散列通常不等于包含值的散列;这使得区分是可能的。std::variant<int, int>持有相同的价值与不同的选择。
例
另见
| hash (C++11) | hash function object (class template) | 
|---|
 © cppreference.com在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

