在线文档教程
C++
输入/输出 | Input/output

std::basic_ostream::swap

性病:基本[医]Ostream::SWAP

protected: void swap(basic_ostream& rhs(since C++11)

打电话basic_ios::swap(rhs)若要交换基类的所有数据成员,除rdbuf()之间*thisrhs这个交换函数是受保护的:它由可交换输出流类的交换函数调用。std::basic_ofstreamstd::basic_ostringstream,它们知道如何正确地交换相关的流缓冲区。

参数

rhs-a basic_ostream of the same type to swap with

二次

#include <sstream> #include <iostream> #include <utility> int main() { std::ostringstream s1("hello" std::ostringstream s2("bye" s1.swap(s2 // OK, ostringstream has a public swap() std::swap(s1, s2 // OK, calls s1.swap(s2) // std::cout.swap(s2 // ERROR: swap is a protected member std::cout << s1.str() << '\n'; }

二次

产出:

二次

hello

二次

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/io/basic[医]Ostream/交换