operator<<,>>(std::subtract_with_carry_engine)
来自cppreference.com
< cpp | numeric | random | subtract with carry engine
template< class CharT, class Traits > friend std::basic_ostream<CharT,Traits>& |
(1) | (C++11 起) |
template< class CharT, class Traits > friend std::basic_istream<CharT,Traits>& |
(2) | (C++11 起) |
1) 序列化伪随机数引擎
e
的内部状态为一或多个空格分隔的十进制数序列,并插入之到流 ost
。填充字符和格式化标志被忽略且无效。2) 从先前用拥有相同感染的本地环境,和相同
CharT
与 Traits
的流调用 operator<<
,生成的序列化表示还原伪随机数引擎 e
的内部状态。若不能反序列化输入,则保留 e
不改变并在 ist
上引发 failbit
。这些函数模板对通常无限定或有限定查找不可见,而只能在 std::subtract_with_carry_engine<UIntType,w,s,r>
为参数的关联类时由实参依赖查找找到。
若用 os << x 写的文本表示,用 is >> y 还原到同类型的同一或不同对象 y
,则 x==y 。
以设置 os.fmtflags 为 ios_base::dec|ios_base::left 并设置填充字符为空格符写文本表示。引擎内部状态的文本表示是一组空格分隔的十进制数。
参数
ost | - | 要插入数据的输出流 |
ist | - | 要提取数据的输入流 |
e | - | 伪随机数引擎 |
返回值
1)
ost
2)
ist
复杂度
本节未完成 |
异常
1) 可能抛出实现定义的异常。
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
DR | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 3519 | C++11 | 插入与提取运算符的形式未指定 | 指定为隐藏友元 |