在C++中,可以使用種子來控制隨機數(shù)生成器的行為,從而避免生成重復的隨機數(shù)值??梢酝ㄟ^設(shè)置不同的種子來確保每次生成的隨機數(shù)序列都是不同的。
以下是一個示例代碼,演示如何使用種子來避免生成重復的隨機數(shù)值:
#include <iostream>
#include <random>
int main() {
// 創(chuàng)建一個隨機數(shù)生成器對象
std::mt19937 rng;
// 使用時間作為種子,確保每次生成的隨機數(shù)序列都是不同的
rng.seed(std::random_device{}());
// 生成10個隨機數(shù)并輸出
for (int i = 0; i < 10; i++) {
std::cout << rng() << std::endl;
}
return 0;
}
在上面的示例中,我們使用了std::random_device
來生成一個隨機的種子,并將其傳遞給隨機數(shù)生成器對象rng
的seed
方法。這樣每次運行程序時,都會使用不同的種子來生成隨機數(shù)序列,從而避免生成重復的隨機數(shù)值。