名稱空間
變體
操作

std::basic_istream<CharT,Traits>::swap

來自 cppreference.com
< cpp‎ | io‎ | basic istream
 
 
 
 
protected:
void swap( basic_istream& rhs );
(C++11 起)

呼叫 basic_ios::swap(rhs) 來交換基類的所有資料成員,除了 rdbuf(),並交換 *thisrhs 之間的 gcount() 計數器值。此 swap 函式是受保護的:它由可交換輸入流類 std::basic_ifstreamstd::basic_istringstream 的 swap 函式呼叫,這些函式知道如何正確交換關聯的 streambuffer。

[edit] 引數

rhs - 要交換的相同型別的不同 basic_istream 物件

[edit] 示例

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

輸出

hello