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;
}
相关推荐
感哥1 小时前
C++ 面向对象
c++
沐怡旸3 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
感哥9 小时前
C++ STL 常用算法
c++
saltymilk20 小时前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程
感哥20 小时前
C++ lambda 匿名函数
c++
沐怡旸1 天前
【底层机制】std::unique_ptr 解决的痛点?是什么?如何实现?怎么正确使用?
c++·面试
感哥1 天前
C++ 内存管理
c++
博笙困了1 天前
AcWing学习——双指针算法
c++·算法
感哥1 天前
C++ 指针和引用
c++
感哥2 天前
C++ 多态
c++