Namespaces
Variants

std::discard_block_engine<Engine,P,R>:: discard_block_engine

From cppreference.net

discard_block_engine ( ) ;
(1) (начиная с C++11)
explicit discard_block_engine ( result_type s ) ;
(2) (начиная с C++11)
template < class SeedSeq >
explicit discard_block_engine ( SeedSeq & seq ) ;
(3) (начиная с C++11)
explicit discard_block_engine ( const Engine & e ) ;
(4) (начиная с C++11)
explicit discard_block_engine ( Engine && e ) ;
(5) (начиная с C++11)

Создает новый адаптер псевдослучайного механизма.

1) Конструктор по умолчанию. Базовый механизм также создается конструктором по умолчанию.
2) Создает базовый механизм с s .
3) Конструирует базовый движок с последовательностью инициализации seq .
Эта перегрузка участвует в разрешении перегрузки только если Sseq удовлетворяет требованиям SeedSequence .
4) Создает базовый движок с копией e .
5) Перемещающий конструктор создает базовый движок с помощью e . e после этого находится в неопределенном, но корректном состоянии.

Содержание

Параметры

s - целочисленное значение для инициализации базового генератора
seq - последовательность инициализации для создания базового генератора
e - генератор псевдослучайных чисел для инициализации

Исключения

3) Если SeedSeq не является std::seed_seq , выбрасывает исключения, выброшенные вызовом seq.generate .

Пример

Отчеты о дефектах

Следующие отчеты об изменениях в поведении, являющиеся дефектными, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Применяется к Поведение в опубликованной версии Корректное поведение
LWG 2181 C++11 перегрузка ( 3 ) не генерировала исключение, даже если вызов seq.generate генерирует исключение пробрасывает исключение