Spec-Zone.ru › C++

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

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

Эти шаблоны функций не видны при обычном поиске без уточнения или квалифицированном поиске и могут быть найдены только посредством поиска, зависящего от аргументов, если std::independent_bits_engine<Engine, w, UIntType> является ассоциированным классом аргументов.

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

Параметры

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

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

1) ost
2) ist

Сложность

Исключения

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

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

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

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

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

Spec-Zone.ru

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