operator<<,>>(std::piecewise_linear_distribution)
template< class CharT, class Traits >
friend std::basic_ostream<CharT,Traits>&
operator<<( std::basic_ostream<CharT,Traits>& ost,
const piecewise_linear_distribution& d );
| (1) | (начиная с C++11) |
template< class CharT, class Traits >
friend std::basic_istream<CharT,Traits>&
operator>>( std::basic_istream<CharT,Traits>& ist,
piecewise_linear_distribution& d );
| (2) | (начиная с C++11) |
Выполняет операции ввода и вывода потоков для распределения псевдослучайных чисел d.
1) Записывает текстовое представление параметров распределения и его внутреннего состояния в
ost в виде текстового представления. Флаги форматирования и символ заполнения ost остаются без изменений.
2) Восстанавливает параметры распределения и внутреннее состояние по данным, считанным из
ist. Флаги форматирования ist остаются без изменений. Данные должны быть записаны с использованием потока с той же локалью, теми же параметрами шаблона CharT и Traits, иначе поведение не определено. При обнаружении некорректного ввода вызывается ist.setstate(std::ios::failbit), которая может выбросить исключение std::ios_base::failure. В этом случае d не изменяется.Эти шаблоны функций не видны при обычном неквалифицированном или квалифицированном поиске и могут быть найдены только с помощью поиска, зависящего от аргументов, если std::piecewise_linear_distribution<ResultType> является ассоциированным классом аргументов.
Параметры
| ost | - | выходной поток, в который вставляются данные |
| ist | - | входной поток, из которого извлекаются данные |
| d | - | распределение псевдослучайных чисел |
Возвращаемое значение
1)
ost
2)
ist
Исключения
1) Может выбрасывать исключения, определяемые реализацией.
2) При некорректном вводе может выбрасывать
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/piecewise_linear_distribution/operator_ltltgtgt