現在、実行時に乱数を生成することに固執しています。 Javaでは、私はMath.random()を呼び出すだけで、かなり手間がかかります(単純なRNGが必要です)。 C++では、乱数を生成するいくつかの方法を試してきましたが、常に同じ結果に終わります。C++の乱数は常に同じです
現在、私は、MINとMAXの間の乱数を取得するには、以下の方法を使用しています:
unsigned int getRandomNumber(int min, int max){
std::mt19937 mt(1729);
std::uniform_int_distribution<int> dist(min, max);
return dist(mt);
}
私はそのコンストラクタでこの関数を呼び出し、属性に戻り値を代入するオブジェクトを持っています。私は現在、このオブジェクトの5つのインスタンスを作成し、乱数は常に同じです。大きな範囲(1〜1000)を設定してもこれは変わりません。番号は常に同じです。セキュリティは問題ではなく、非常に単純なアプリケーションです。 mt
静的を作る
あなたは乱数ジェネレータに毎回同じシード値を与えています。プログラムの中で一度だけそれに。 –
リンクありがとう! – NL3