当前位置:  开发笔记 > 编程语言 > 正文

C++从1到非常大的随机数(例如2500万)

如何解决《C++从1到非常大的随机数(例如2500万)》经验,为你挑选了1个好方法。

你如何创建一个产生1到2,500万随机数的函数?

我已经考虑过使用,rand()但我认为最大数量RAND_MAX是正确的= 32000(那里)?

有没有办法绕过这种方式,这种方式不会降低选择非常低数字的概率,也不会增加选择高/中数的概率?

编辑:@Jamey D的方法完全独立于Qt.



1> Sombrero Chi..:

你可以(应该)使用新的C++ 11 std::uniform_real_distribution

#include 

std::random_device rd;
std::mt19937 gen(rd());

std::uniform_real_distribution<> distribution(1, 25000000);

//generating a random integer:
double random = distribution(gen);


为什么是real_distribution而不是int_distribution?
推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有