gpt4 book ai didi

c++ - 如何消除所有随机性来源,使程序始终给出相同的答案?

转载 作者:太空狗 更新时间:2023-10-29 23:37:56 25 4
gpt4 key购买 nike

我有严重依赖采样(使用 rand())的 C++ 代码,但我希望它是可重现的。所以一开始,我用一个随机种子初始化 srand() 并打印出那个种子。我希望其他人能够再次运行相同的代码,但使用相同的种子初始化 srand() 并获得与我所做的完全相同的答案。

但在什么情况下可以保证呢?我想只有当二进制文件在同一系统上使用相同的编译器编译时才有效?还有哪些其他因素可能使答案与我最初得到的答案不同?

最佳答案

解决方案是在所有情况下都使用相同的代码——Boost 随机数库比任何 C++ 标准库实现都要好得多,而且您可以在所有平台上使用相同的代码。看看this question例如它的使用和图书馆文档的链接。

关于c++ - 如何消除所有随机性来源,使程序始终给出相同的答案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3435595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com