C 伪随机数生成平台依赖关系
C++ pseudo random number generation platform dependency
在下面的代码下方有什么是平台或编译器依赖性的东西?当用cygwin中的G 编译时,它与用VC 编译时给出了不同的值。如果可能的话,我想删除任何此类依赖。
minstd_rand0 engine;
engine.seed(3113722101);
uniform_int_distribution<int> day_dist(1, 365);
uniform_real_distribution<double> quant_dist(0.0, 1.0);
ofstream fout(argv[1]);
for (int i = 0; i < years; ++i) {
fout << (i + 1) << "t";
fout << day_dist(engine) << "t";
fout << quant_dist(engine) << "t";
fout << quant_dist(engine) << "t";
fout << quant_dist(engine) << "n";
}
fout.close();
引擎的规格指定确切的算法,因此它们的输出应在所有平台上相同。
distributions 的规格指定结果,但没有指定算法。即使使用相同的引擎,它们的输出也可以因平台而异。
除了产生统一分布外,对统一分布没有任何限制。
标准图书馆作者可以使用他们喜欢的任何算法和实现,因此可能会在不同的平台上产生不同的结果。
您的选项是生产自己的分销或找到具有适当许可证的开源产品。
相关文章:
- 正在查找文档以获得PS4平台的C++中的设备信息
- 如何从C++中的依赖类型中获得它所依赖的类型
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 将依赖名称显式标记为类型名和模板的奇怪之处
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- C++GTKMM gui循环依赖关系
- 通过ccmake在cmake中缓存依赖选项
- 当基类是依赖类型时,这是一个缺陷吗
- 从不同的附加依赖项中识别等同命名的函数
- 如何在 CMake 中对目标依赖项进行分组?
- C/C++ - 查询平台相关的换行符(用于内存映射文件)
- mt19937 的平台依赖状态在C++?
- 在编写平台依赖代码时,请使用constexpr代替宏
- C 伪随机数生成平台依赖关系
- 是依赖于C++平台的
- windows上的boost.asio错误代码依赖于平台
- 尽管严重依赖JVM,但Java是如何独立于平台的
- 如何在c++ /C中处理getopt平台依赖
- 用户界面-是否存在用于C++的跨平台GUI库(具有依赖于平台的UI和基于脚本的布局)
- 如果DLL将在多个平台上使用,那么在编码中使用windows依赖项是否安全?