std::mersenne_twister_engine<UIntType,w,n,m,r,a,u,d,s,b,t,c,l,f>::seed
來自 cppreference.com
void seed( result_type value = default_seed ); |
(1) | (C++11 起) |
template< class SeedSeq > void seed( SeedSeq& seq ); |
(2) | (C++11 起) |
設定隨機數引擎的狀態。
目錄 |
[編輯] 引數
value (值) | - | 用於設定狀態的種子值 |
seq (序列) | - | 用於設定狀態的種子序列 |
[編輯] 異常
[編輯] 複雜度
1) 同 std::mersenne_twister_engine(value)。
2) 同 std::mersenne_twister_engine(seq)。
缺陷報告
下列更改行為的缺陷報告追溯地應用於以前出版的 C++ 標準。
缺陷報告 | 應用於 | 釋出時的行為 | 正確的行為 |
---|---|---|---|
LWG 2181 | C++11 | 過載 (2) 即使 seq.generate 呼叫丟擲異常也不會丟擲異常 |
傳播異常 |
[編輯] 參閱
構造引擎 (公有成員函式) |
[編輯] 示例
執行此程式碼
#include <iostream> #include <random> int main() { std::mt19937 gen; // Seed the engine with an unsigned int gen.seed(1); std::cout << "after seed by 1: " << gen() << '\n'; // Seed the engine with two unsigned ints 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