我目前正在编写 roguelike,自然会使用大量随机数生成。
我遇到的问题是,如果我“过热” rand(); 我的程序会崩溃。
如果我每帧只生成 20 个左右的整数,那很好……但是当随机数的数量达到数百个时,程序就会崩溃。我制作每一帧的次数越多,崩溃的速度就越快……这让我相信发生了一些堆积。
我已经完成了测试,并且在 20 rand(); 每帧调用一次,它将以最大速度连续运行 24 小时而不会崩溃。三倍,它没有十分钟。
如果我把 srand(); 在初始化中,我可以在锁定之前生成数千个随机数 - 但如果我输入 srand(); 在框架本身内,我制作了大约 2-8 帧。如果重要的话,我正在使用 time(null) 来播种。
我调用 rand() 的频率越高;它越早崩溃。
帮助?