私は検索しましたが、私のニーズに正確に合うものを見つけるのに苦労しました。 srand()でシードを設定した後、rand()で一連の乱数を生成したい。C++:非同期決定のためのオブジェクトにrand()ジェネレータを保存できますか?
これを非同期に行う必要があり、他のランダムシーケンスが同時に生成される可能性があります。一度に生成されるものと同じ決定論的なシーケンスを維持する必要があります。 rand()はグローバルなので、rand()でこれを行う方法はないと思います。
私の心の中の解決策は、srand/randのように機能するが、保存してオブジェクトとして渡すことができるものである。例えば
RandGenerator random(srand_seed) int r = random.get_random();
私はC++ 11からの「余分なランダム」utilsのいずれかを必要としませんが、彼らは何とかここに私を助け場合、私はそれらを使用します。私はちょうどどこを見て理解していない。
++ 11 'あなたの心の中でソリューションがどのように見えるかのあなたの一例ですまさにC++ 11のランダムなことです。 –