命名空间
变体
操作

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

来自 cppreference.com
 
 
 
 
 
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<< 的调用创建的,使用具有相同注入区域设置和相同 CharTTraits 的流。如果输入无法反序列化,则 e 将保持不变,并且 ist 上将引发 failbit

这些函数模板对普通的 非限定限定查找 不可見,只有在 std::shuffle_order_engine<Engine, k> 是参数的关联类时,才能通过 参数依赖查找 找到它们。

如果使用 os << x 写入文本表示,并且该表示被恢复到使用 is >> y 的相同或不同类型的同一个对象 y 中,那么 x == y.

内容

[编辑] 参数

ost - 要插入数据的输出流
ist - 要从中提取数据的输入流
e - 要序列化或恢复的引擎适配器

[编辑] 返回值

1) ost
2) ist

[编辑] 复杂度

[编辑] 异常

1) 可能会引发实现定义的异常。
2) 在设置 failbit 时可能会引发 std::ios_base::failure

[编辑] 缺陷报告

以下行为更改缺陷报告已追溯应用于先前发布的 C++ 标准。

DR 应用于 发布的行为 正确行为
LWG 3519 C++11 插入和提取运算符的形式未指定 指定为隐藏朋友