std::linear_congruential_engine<UIntType,a,c,m>::seed
void seed( result_type value = default_seed ); | (1) | (начиная с C++11) |
template< class SeedSeq > void seed( SeedSeq& seq ); | (2) | (начиная с C++11) |
Устанавливает состояние генератора случайных чисел.
1) Сразу после установки состояния
*this == std::linear_congruential_engine(value) равно true.
2) Сразу после установки состояния
*this == std::linear_congruential_engine(seq) равно true.Параметры
| value | - | начальное значение, используемое для установки состояния |
| seq | - | последовательность начальных значений, используемая для установки состояния |
Исключения
2) Если
SeedSeq не является std::seed_seq, выбрасываются исключения, выбрасываемые при вызове seq.generate.Сложность
1) Такая же, как у
std::linear_congruential_engine(value).
2) Такая же, как у
std::linear_congruential_engine(seq).Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были ретроактивно применены к ранее опубликованным стандартам C++.
| Отчёт об ошибке | Применялся к | Поведение согласно опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 2181 | C++11 | перегрузка (2) не выбрасывала исключение, даже если вызов seq.generate выбрасывал исключение | передаёт исключение дальше |
См. также
| создаёт генератор (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/numeric/random/linear_congruential_engine/seed