我想在32位应用程序中生成任何有限的std :: string大小唯一标识(即大小6)。什么是最好的和快速的方法来做到这一点?生成std :: string的唯一标识
回答
查找字符串的散列,例如Jenkins hash function。
但你永远不会得到独特的哈希值,因为字符串可以比你的尺寸6更长的时间,而Pigoenhole lemma显示平凡认为散列必须碰撞的结果。
很难从你的问题你问出来,但下面的顺序“1”,在生成的字符串,“2”,“3”:
#include <string>
#include <sstream>
std::string GetUniqueId() {
static int n = 1;
std::ostringstream os;
os << n++;
return os.str();
}
我将具有唯一ID的数据保存在文件中,如果我要使用1 .. 2 .. 3。序列那么我如何知道下次我加载文件时ID是否已经提供给某些数据? 我想如果我从每个可能有ID的唯一数据生成ID,会更好。 – cpx 2010-01-23 11:25:03
你为什么没有在你原来的问题中说出来?你在这里得到的答案的质量与你问题的清晰度和细节成正比。 – 2010-01-23 11:30:22
请注意,此方法不是线程安全的。至少“静态”变量需要被保护以防止并发访问。 – MKroehnert 2011-04-13 15:14:12
- 1. 生成条件唯一标识符
- 2. 唯一号码标识符生成
- 3. 即时生成唯一标识
- 4. 生成用户唯一标识的最佳/标准方法?
- 5. 唯一标识符
- 6. 为用户标识生成随机唯一标记
- 7. 在JavaScript中生成唯一标识iOS设备的(非UDID)标识符
- 8. 自动生成的字母数字的唯一标识与C#
- 9. 在linux下生成全局唯一标识的参数
- 10. MySQL - 生成自动增量的唯一标识
- 11. 生成用于标识记录的唯一随机字符串
- 12. 如何在jsrender模板中生成唯一的标识
- 13. 如何编写生成唯一标识符的存储过程?
- 14. 可以正确地生成唯一标识符的Django模型
- 15. 生成唯一标识符作为基于集合的查询
- 16. 为数组中的元素生成'可读'唯一标识符?
- 17. PC的唯一标识符
- 18. 唯一标识Mailitem
- 19. 如何为每个设备生成唯一标识符?
- 20. 使用Python生成唯一标识时出错
- 21. R.java文件如何为资源生成唯一标识
- 22. Javascript GUID(全局唯一标识符)生成器说明
- 23. 生成字母数字标识(唯一字符串)
- 24. 在星号中生成非十进制唯一标识
- 25. 从SQL子查询生成唯一标识
- 26. 如何为地址结构生成唯一标识符?
- 27. 生成唯一
- 28. 唯一标识符策略
- 29. UITableViewCell唯一标识符?
- 30. NSManagedObject的唯一标识符
什么样的id?数字?又有多独特?对于您的应用程序,会话,机器,世界? – 2010-01-23 10:47:53
它可以有任何足够独特的ASCII字符,所以我不会再次获得相同的ID。它可以是从1到8的任何大小,用于我的应用程序。 – cpx 2010-01-23 10:57:25
在这种情况下,明显的序列1,2,3有什么问题,.... – 2010-01-23 11:08:10