cost 185 ms
mt19997 通过引用传递的 C++ 对象始终生成相同的值 - mt19997 C++ object passed by reference always generates the same values

我正在尝试编写代码,在 A 类中创建一个对象 mt19937,该对象可用于类内部函数以生成随机数,我还想将对该同一对象的引用传递给 B 类的各种实例在 A 类内部声明。那些通过引用传递的对象也应该能够生成随机数以供 B 类内部使用。 问题是:在 A 类中它生成随机数,但在 B 类中它生成相同的序列。 ...

在class中制作mt19937 static是正确的 - It is proper to make mt19937 static in a class

假设我有一个 class,如下所示: 如您所见,有两个函数,它们都需要一个随机数来做某事。 在这种情况下,我可以将数据成员std::mt19937 mt设置为 static 并在 cpp 文件中对其进行初始化吗? 我刚刚尝试过,它似乎有效。 但是不知道是不是哪里出了问题。 我可以说 static 或 ...

Visual Studio 2019 c++latest generic URNG function 最新更新后编译失败 - Visual Studio 2019 c++latest generic URNG function fails to compile after latest update

我有以下通用 C++ 通用 URNG function: 我从以下测试 function 中调用 function: 在 Visual Studio 2019 中使用c++latest会导致以下编译错误: 它曾经可以工作,但最近的 VS2019 更新导致它失败。 我想念什么? ...

当 std::random_device 熵未知时如何初始化 std::mt19937? (VS C++/Windows) - How to initialize std::mt19937 when std::random_device entropy is unknown? (VS C++/Windows)

我正在尝试构建一个简单的随机数生成器,但我想确保 random_device 正常工作。 我从以下代码开始: 我曾看到“std::chrono::high_resolution_clock::now().time_since_epoch().count()”被推荐为 random_device ...

std::mt19937 为相同的第一个浮点数 ex(1.2, 1.5) 给出相同的随机浮点数 - std::mt19937 gives the same random float for identical first float numbers ex(1.2, 1.5)

我有这个随机浮点函数,看起来像这样: 如您所见,该函数接受一个输入并返回一个介于 -1 和 1 之间的输出 但我的问题是,当我给出一个输入浮点数时,如果点左侧的数字相同。 示例:(1.2, 1.52, 1.658, 1.01...) 随机浮点数将给出相同的值,(抱歉英语不好) 所以输入 1.5 ...

在CPP中在运行时选择随机数生成器 - Chosing the random-number-generator at runtime in CPP

我可能会付出不必要的努力,但是谁在乎,让我们尝试解决这个问题:我想在代码中使用<random>中的“ random_device”生成器。 但这可能在某些系统上不可用(根据规范),因此我想将mt19937作为备份(但是无论我使用什么生成器,我都希望在末尾使用相同的变量名)。 现在 ...

如何在C ++中为每个应用程序播种一次mt19937并多次使用它? - How to seed mt19937 once per app in C++ and use it multiple times?

我可以在一个简单的应用程序中获得mt19937 rng种子。 现在我试图让每个应用程序播种一次,并在需要时多次使用它。 这是我的代码。 我得到的错误是GenerateRandomNumber - “gen:undeclared identifier”。 main.cpp中 g ...

当std :: uint_fast32_t在GCC中为4个字节时,std :: mt19937失败 - std::mt19937 fails when std::uint_fast32_t is 4 bytes in GCC

我遇到的问题发生在我试图测试生成伪随机数的cppreference示例时。 举个例子: 在我的机器上,它会导致崩溃。 通过“崩溃”我的意思是该过程只是挂起并在几秒后返回0xC0000005 。 我想知道是什么原因造成的。 GCC错误? 我的机器出现故障? 我决定测试,结果 ...

只有std :: mt19937实例在c ++ 11中重复值 - Only instance of std::mt19937 repeats values in c++11

在程序中,经常在不同的类中生成随机数。 因此,我想创建一个返回生成器std :: mt19937的单个实例的类。 我还考虑到某些编译器不适用于std :: random_device(为此,请检查熵的值)。 我创建了一个类单例。 但是,当我离开类生成器std :: mt19937时 ...

在 C++11 中保存和加载随机数生成器状态 - Save and Load Random Number Generator State in C++11

之前已经问过这个问题 ( stackoverflow ) 但 (接受的) 答案并不令人满意。 以下示例保存和加载状态,但取决于生成的值的数量,它可以工作或不工作: 使用这些参数,它可以像预期的那样工作。 但是,如果我设置preN=3 ,则输出如下所示: 为什么断言不适用? 现在我设置preN=3和m ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM