Spec-Zone.ru › C++

std::shuffle_order_engine

Определено в заголовочном файле <random>
template<
    class Engine,
    std::size_t K
> class shuffle_order_engine;
(с C++11)

shuffle_order_engine — это адаптер генератора случайных чисел, который перемешивает случайные числа, генерируемые базовым генератором. Он поддерживает таблицу размером K и при запросе возвращает случайно выбранное число из этой таблицы, заменяя его числом, сгенерированным базовым генератором.

Следующее определение typedef задаёт генератор случайных чисел с одним из часто используемых наборов параметров:

Определено в заголовочном файле <random>
Тип Определение
knuth_b (C++11) std::shuffle_order_engine<std::minstd_rand0,256>

Параметры шаблона

Engine - тип обёрнутого генератора
K - размер внутренней таблицы. Должен быть больше 0.
Требования к типу
-Engine должен соответствовать требованиям RandomNumberEngine.

Типы-члены

Тип-член Определение
result_type (C++11) Engine::result_type

Функции-члены

(конструктор)
(C++11)
создаёт адаптер генератора
(открытая функция-член)
seed
(C++11)
задаёт состояние базового генератора
(открытая функция-член)
base
(C++11)
возвращает базовый генератор
(открытая функция-член)
Генерация
operator()
(C++11)
изменяет состояние базового генератора и возвращает сгенерированное значение
(открытая функция-член)
discard
(C++11)
изменяет состояние адаптера на заданное число шагов
(открытая функция-член)
Характеристики
min
[статическая] (C++11)
возвращает наименьшее возможное значение в диапазоне вывода базового генератора.
(открытая статическая функция-член)
max
[статическая] (C++11)
возвращает наибольшее возможное значение в диапазоне вывода базового генератора.
(открытая статическая функция-член)

Функции, не являющиеся членами

operator==operator!=
(C++11)(C++11)(удалён в C++20)
сравнивает внутренние состояния адаптеров и базовых генераторов
(функция)
operator<<operator>>
(C++11)
выполняет потоковый ввод и вывод для адаптера генератора псевдослучайных чисел
(функция)

Объекты-члены

constexpr size_t table_size
[статическая] (C++11)
размер внутренней таблицы, K
(открытая статическая константа-член)

Пример

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/numeric/random/shuffle_order_engine

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API