首页 > 解决方案 > 在 GCC 和 MS C++17 上生成 Beta 分布的随机变量

问题描述

下面的代码在 MSVC c++17 中给了我一个 beta 分布的随机变量:

std::mt19937 gen;
std::_Beta_distribution<float> beta(0.5, 0.5);
std::cout << beta(gen) << std::endl;

不幸的是,相同的代码无法在 GCC9.3.0 上编译。我需要代码,最好是在两个平台上都可以使用的单一方法,但我会使用不同的方法来生成 Beta 分布式随机变量,而不使用 Boost。如何解决这个问题?std::_Beta_distribution 是否隐藏在 GCC 的其他地方?还是我需要编写自己的代码?

标签: c++randomc++17

解决方案


推荐阅读