名前空間
変種
操作

std::seed_seq::seed_seq

提供: cppreference.com
< cpp‎ | numeric‎ | random‎ | seed seq
 
 
 
擬似乱数生成
一様ランダムビットジェネレータ
エンジンとエンジンアダプタ
非決定的なジェネレータ
分布
一様分布
ベルヌーイ分布
ポアソン分布
正規分布
標本分布
シードシーケンス
(C++11)
C のライブラリ
 
 
seed_seq();
(1) (C++11およびそれ以降)
seed_seq( const seed_seq& ) = delete;
(2) (C++11およびそれ以降)
template< class InputIt >
seed_seq( InputIt begin, InputIt end );
(3) (C++11およびそれ以降)
template< class T >
seed_seq( std::initializer_list<T> il );
(4) (C++11およびそれ以降)
1) デフォルトコンストラクタ。 長さゼロの初期シードシーケンスを持つ std::seed_seq オブジェクトを作成します。
2) コピーコンストラクタは削除されています。 std::seed_seq はコピー可能ではありません。
3) 範囲 [begin, end) をイテレートし、そのイテレータを逆参照することによって取得された値の modulo 232
をコピーする (つまり、下位32ビットをコピーする) ことによって取得された初期シードシーケンスを使用して、 std::seed_seq を構築します。
4) seed_seq(il.begin(), il.end()) と同等です。 このコンストラクタはリスト初期化を有効化します。

[編集] 引数

begin, end - std::iterator_traits<>::value_type が整数型である一組の入力イテレータとして表される初期シードシーケンス
il - 初期シードシーケンスを提供する、整数型のオブジェクトの std::initializer_list
型の要件
-
InputItInputIterator の要件を満たさなければなりません。

[編集] 例外

1) 投げません。

[編集]

#include <random>
#include <sstream>
#include <iterator>
int main()
{
    std::seed_seq s1; // default-constructible
    std::seed_seq s2{1, 2, 3}; // can use list-initialization
    std::seed_seq s3 = {-1, 0, 1}; // another form of list-initialization
    int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    std::seed_seq s4(a, a + 10); // can use iterators
    std::istringstream buf("1 2 3 4 5"); 
    std::istream_iterator<int> beg(buf), end;
    std::seed_seq s5(beg, end); // even stream input iterators
}