std::mersenne_twister_engine<UIntType,w,n,m,r,a,u,d,s,b,t,c,l,f>:: seed
From ja.cppreference.net
<
cpp
|
numeric
|
random
|
mersenne twister engine
|
void
seed
(
result_type value
=
default_seed
)
;
|
(1) | (C++11以降) |
|
template
<
class
SeedSeq
>
void seed ( SeedSeq & seq ) ; |
(2) | (C++11以降) |
乱数エンジンの state を設定します。
目次 |
パラメータ
| value | - | 状態を設定するために使用するシード値 |
| seq | - | 状態を設定するために使用するシードシーケンス |
例外
計算量
2)
次と同様:
std::
mersenne_twister_engine
(
seq
)
.
不具合報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 2181 | C++11 |
オーバーロード
(
2
)
は
seq.generate
呼び出しが例外をスローしても例外をスローしない
|
例外を伝播する |
関連項目
|
エンジンを構築する
(public member function) |
例
このコードを実行
#include <iostream> #include <random> int main() { std::mt19937 gen; // 符号なし整数でエンジンをシード gen.seed(1); std::cout << "after seed by 1: " << gen() << '\n'; // 2つの符号なし整数でエンジンをシード std::seed_seq sseq{1, 2}; gen.seed(sseq); std::cout << "after seed by {1,2}: " << gen() << '\n'; }
出力例:
after seed by 1: 1791095845
after seed by {1,2}: 3127717181