std::basic_ostream<CharT,Traits>::swap
From cppreference.com
< cpp | io | basic_ostream
| protected: void swap( basic_ostream& rhs ); |
(C++11以降) | |
基底クラスのすべてのデータメンバー(rdbuf()を除く)を、*this と rhs の間で交換するために basic_ios::swap(rhs) を呼び出します。この swap 関数は protected であり、交換可能な出力ストリームクラスである std::basic_ofstream および std::basic_ostringstream の swap 関数から呼び出されます。これらのクラスは、関連付けられたストリームバッファを正しく交換する方法を知っています。
[編集] パラメータ
| rhs | - | 交換対象の同じ型の basic_ostream |
[編集] 例
このコードを実行
#include <iostream> #include <sstream> #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