std::basic_ostream::swap
protected: void swap(basic_ostream& rhs); | | (since C++11) |
---|
打电话basic_ios::swap(rhs)
若要交换基类的所有数据成员,除rdbuf()
之间*this
和rhs
这个交换函数是受保护的:它由可交换输出流类的交换函数调用。std::basic_ofstream
和std::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。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com