Spec-Zone.ru › C++

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

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.

Эти шаблоны функций недоступны для обычного неквалифицированного или квалифицированного поиска; найти их можно только с помощью поиска с учётом аргументов, если std::shuffle_order_engine<Engine, k> является ассоциированным классом аргументов.

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

Параметры

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

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

1) ost
2) ist

Сложность

Исключения

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

Отчёты об ошибках

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

DR Применяется к Опубликованное поведение Корректное поведение
LWG 3519 C++11 форма операторов вставки и извлечения не была указана уточнено, что это скрытые дружественные функции

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

Spec-Zone.ru

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