C++ 标准库随机数:std::default_random_engine

库头文件 #include <random>

cpp 复制代码
// 通过种子值设置随机数生成器
std::default_random_engine rng(seed);

// 不设置种子值,使用默认值
std::default_random_engine rng;
cpp 复制代码
// 生成一个0到9之间的随机整数
int random_int = rng() % 10;

// 生成一个0到1之间的随机浮点数
float random_float = std::generate_canonical<float, 10>(rng);
cpp 复制代码
std::default_random_engine& getRandomEngine()
{
	static std::default_random_engine re(std::random_device{}());
	return re;
}

bool randomDraw(int32_t draw, int32_t range)
{
	std::uniform_int_distribution<> ud(0, range - 1);
	return ud(getRandomEngine()) < draw;
}
相关推荐
艾莉丝努力练剑6 分钟前
【LeetCode&数据结构】单链表的应用——反转链表问题、链表的中间节点问题详解
c语言·开发语言·数据结构·学习·算法·leetcode·链表
还债大湿兄2 小时前
《C++内存泄漏8大战场:Qt/MFC实战详解 + 面试高频陷阱破解》
c++·qt·mfc
倔强青铜34 小时前
苦练Python第18天:Python异常处理锦囊
开发语言·python
u_topian4 小时前
【个人笔记】Qt使用的一些易错问题
开发语言·笔记·qt
珊瑚里的鱼5 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
AI+程序员在路上5 小时前
QTextCodec的功能及其在Qt5及Qt6中的演变
开发语言·c++·qt
xingshanchang5 小时前
Matlab的命令行窗口内容的记录-利用diary记录日志/保存命令窗口输出
开发语言·matlab
Risehuxyc5 小时前
C++卸载了会影响电脑正常使用吗?解析C++运行库的作用与卸载后果
开发语言·c++
AI视觉网奇5 小时前
git 访问 github
运维·开发语言·docker
不知道叫什么呀5 小时前
【C】vector和array的区别
java·c语言·开发语言·aigc