Namespaces
Variants

std::experimental:: reseed

From cppreference.net
定義先ヘッダ <experimental/random>
void reseed ( ) ;
(1) (ライブラリ基盤仕様 TS v2)
void reseed ( std :: default_random_engine :: result_type value ) ;
(2) (ライブラリ基盤仕様 TS v2)

スレッド毎乱数エンジン および std::uniform_int_distribution のインスタンスを randint で使用されるものについて再シードします。

1) スレッドごとのエンジンを予測不可能な状態に設定します。
2) スレッドごとのエンジン g を、 g. seed ( value ) によってシードするかのように初期化します。

目次

パラメータ

value - 新しいシードの値

備考

randint への後続の呼び出しは、 reseed を呼び出す前にスレッドごとのエンジンによって生成された値に依存しません。

#include <experimental/random>
#include <iostream>
int main()
{
    std::experimental::reseed();
    std::cout << "Random 2-digit decimal numbers: ";
    for (auto i = 0; i != 3; ++i)
        std::cout << std::experimental::randint(10, 99) << ' ';
    std::cout << '\n';
}

出力例:

Random 2-digit decimal numbers: 41 60 56

関連項目

指定された範囲内で乱数整数を生成する
(関数テンプレート)