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

来自cppreference.com

 
 
 
 
 
template< class CharT, class Traits >

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

                const uniform_int_distribution& d );
(1) (C++11 起)
template< class CharT, class Traits >

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

                uniform_int_distribution& d );
(2) (C++11 起)

在伪随机数分布 d 上进行流输入与输出。

1) 将分布参数和内部状态作为文本表示写入 ost 。不更改 ost 的格式化标志和填充字符。
2) 以读取自 ist 的数据恢复分布参数和内部状态。不更改 ist 的格式化标志。数据必须用拥有相同本地环境、 CharTTraits 模板形参的流写入,否则行为未定义。若遇到坏输入,则调用 ist.setstate(std::ios::failbit) ,它可能抛出 std::ios_base::failure 。该情况下不更改 d

这些函数模板对通常无限定有限定查找不可见,而只能在 std::uniform_int_distribution<ResultType> 为参数的关联类时由实参依赖查找找到。

参数

ost - 插入数据到的输出流
ist - 提取数据来源的输入流
d - 伪随机数分布

返回值

1) ost
2) ist

异常

1) 可能会抛出由实现定义的异常。
2) 输入错误时可能抛出 std::ios_base::failure

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 出版时的行为 正确行为
LWG 3519 C++11 插入与提取运算符的形式未指定 指定为隐藏友元