您的位置:首页 > 其它

生成一定范围内的真随机数

2014-04-17 10:58 260 查看
利用rand之类的伪随机发生器,会有重复,而这个在游戏里随机事件是不允许的,现在就简单实现一个小范围的“真随机数”:

#include <iostream>
#include <string>
#include <locale>
#include <random>
#include <set>
using namespace std;

int main(void) {
static std::default_random_engine  m_Generator;
std::uniform_int_distribution<int> distribution(0, 10);
set<int> lSet;
for (int i = 0; i < 10; ++i){
do {
int a = distribution(m_Generator);
if (lSet.find(a) == lSet.end()){
printf("%d\n", a);
lSet.insert(a);
break;
}
} while (true);
}
}




可以看到比较 暴力,哈哈
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: