Spec-Zone.ru › C++

C++ именованные требования: RandomNumberEngineAdaptor (с C++11)

A RandomNumberEngineAdaptor — это RandomNumberEngine, преобразующий вывод другого RandomNumberEngine, который называется базовым движком.

Требования

Дано

  • B, RandomNumberEngine
  • b, объект типа B
  • A, RandomNumberEngineAdaptor, адаптирующий B в качестве базового движка
  • a, объект типа A
Функция Семантика
A::A(); Базовый движок инициализируется как при его конструкторе по умолчанию.
bool operator==(const A& lhs, const A& rhs); Возвращает, равны ли базовый движок lhs и базовый движок rhs или нет.
A::A(result_type s); Базовый движок инициализируется s.
template<class Sseq> A::A(Sseq& q); Базовый движок инициализируется q.
void seed(); Вызывает b.seed().
void seed(result_type s); Вызывает b.seed(s).
template<class Sseq> void seed(Sseq& q); Вызывает b.seed(q).

Кроме того

  • Сложность каждой функции A не превышает сложности функции B
  • Состояние A включает состояние B
  • Размер состояния A не меньше размера состояния b
  • Копирование состояния A включает копирование состояния B
  • Текстовое представление A включает текстовое представление B

Стандартная библиотека

Следующие компоненты стандартной библиотеки удовлетворяют требованиям к RandomNumberEngineAdaptor:

discard_block_engine
(C++11)
отбрасывает часть вывода движка случайных чисел
(шаблон класса)
independent_bits_engine
(C++11)
упаковывает вывод движка случайных чисел в блоки заданного количества бит
(шаблон класса)
shuffle_order_engine
(C++11)
предоставляет вывод движка случайных чисел в другом порядке
(шаблон класса)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/named_req/RandomNumberEngineAdaptor

Spec-Zone.ru

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