<random>
C++11 から使用して乱数を描画します。次のクラスのインスタンスobj
を作成することでそれを行います (興味のある読者のために: このスレッドから取得されます)。
class RNG
{
public:
typedef std::mt19937 Engine;
typedef std::uniform_real_distribution<double> Distribution;
double operator()()
{
return distribution(engine);
}
Engine engine;
Distribution distribution;
};
呼び出すobj()
と、目的の乱数が得られます。これで、すべてを使用する必要がある 3 つの関数ができobj
ました。グローバル宣言obj
は機能しますが、それも正しいですか? または、他の(より正しい)代替手段はありますか?