Namespaces
Variants

operator<<,>> (std::shuffle_order_engine)

From cppreference.net

template < class CharT, class Traits >

friend std:: basic_ostream < CharT,Traits > &
operator << ( std:: basic_ostream < CharT,Traits > & ost,

shuffle_order_engine <> & e ) ;
(1) (начиная с C++11)
template < class CharT, class Traits >

friend std:: basic_istream < CharT,Traits > &
operator >> ( std:: basic_istream < CharT,Traits > & ist,

shuffle_order_engine & e ) ;
(2) (начиная с C++11)
1) Сериализует внутреннее состояние адаптера генератора псевдослучайных чисел в виде последовательности десятичных чисел, разделенных одним или несколькими пробелами, и вставляет его в поток ost . Символ заполнения и флаги форматирования потока игнорируются и не изменяются.
2) Восстанавливает внутреннее состояние адаптера генератора псевдослучайных чисел e из сериализованного представления, созданного предыдущим вызовом operator<< с использованием потока с той же локализацией и теми же CharT и Traits . Если ввод не может быть десериализован, e остаётся неизменным и на ist устанавливается failbit .

Эти шаблоны функций не видны при обычном unqualified или qualified lookup и могут быть найдены только с помощью argument-dependent lookup , когда std::shuffle_order_engine<Engine, k> является ассоциированным классом аргументов.

Если текстовое представление записывается с помощью os << x и это представление восстанавливается в тот же или другой объект y того же типа с использованием is >> y , тогда x == y .

Содержание

Параметры

ost - выходной поток для вставки данных
ist - входной поток для извлечения данных
e - адаптер движка для сериализации или восстановления

Возвращаемое значение

1) ost
2) ist

Сложность

Исключения

1) Может генерировать исключения, определяемые реализацией.
2) Может выбрасывать std::ios_base::failure при установке failbit .

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

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

DR Applied to Behavior as published Correct behavior
LWG 3519 C++11 форма операторов вставки и извлечения была не определена определены как скрытые дружественные функции