首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在c ++中生成唯一ID

在C++中生成唯一ID的方法有很多种,这里我将介绍一种简单的方法,使用<random>库和<chrono>库生成唯一ID。

代码语言:c++
复制
#include<iostream>
#include<random>
#include<chrono>
#include<string>

std::string generate_unique_id() {
    static std::mt19937_64 eng(std::chrono::system_clock::now().time_since_epoch().count());
    static std::uniform_int_distribution<uint64_t> dist;

    uint64_t unique_id = dist(eng);
    return std::to_string(unique_id);
}

int main() {
    std::string unique_id = generate_unique_id();
    std::cout << "Generated unique ID: "<< unique_id<< std::endl;
    return 0;
}

在这个例子中,我们使用了std::mt19937_64伪随机数生成器,它是一个高质量的随机数生成器,并使用std::chrono::system_clock::now()作为种子,确保每次生成的随机数序列都是不同的。然后我们使用std::uniform_int_distribution<uint64_t>来生成一个64位的随机整数,作为唯一ID。

这种方法生成的唯一ID是基于时间的,因此它是不可预测的,并且在大多数情况下足够唯一。但是,如果您需要更高级的唯一ID生成器,可以考虑使用UUID库或其他第三方库。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券