【发布时间】:2020-04-07 21:31:05
【问题描述】:
我想知道 typeid 的hash_code() 在不同的计算机上是否相同?例如:如果typeid(int).hash_code() 在另一台计算机上会是一样的吗?
【问题讨论】:
-
确实有 0 个保证。在同一台计算机上连续两次运行相同的二进制文件时,它们甚至不必相同。一个非常明显的实现是散列一个指针地址。
标签: c++
我想知道 typeid 的hash_code() 在不同的计算机上是否相同?例如:如果typeid(int).hash_code() 在另一台计算机上会是一样的吗?
【问题讨论】:
标签: c++
我想知道
hash_code()的typeid在不同的电脑上是不是一样?
它可能是也可能不是。来自cppreference 的行为是:
返回一个未指定的值,这样对于所有引用相同类型的
type_info对象,它们的hash_code()是相同的。没有给出其他保证:
type_info引用不同类型的对象可能具有相同的hash_code(尽管标准建议实现尽可能避免这种情况),并且同一类型的hash_code可以在调用同一程序。
【讨论】:
【讨论】: