std::basic_ostream<CharT,Traits>::swap
來自 cppreference.com
< cpp | io | basic ostream
protected: void swap( basic_ostream& rhs ); |
(C++11 起) | |
呼叫 basic_ios::swap(rhs) 來交換基類的所有資料成員,除了 rdbuf(),在 *this 和 rhs 之間。此交換函式是受保護的:它由可交換輸出流類 std::basic_ofstream 和 std::basic_ostringstream 的交換函式呼叫,這些類知道如何正確交換關聯的流緩衝區。
[編輯] 引數
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