basic_ios::swap(x)用于交换基类的所有数据成员(rdbuf()除外),并在* this和x之间交换gcount()计数器的值。该basic_ios::swap(x)函数是受保护的函数。下面是相同的语法和头文件:
头文件:
#include<iostream>
用法:
void swap (basic_istream& x);
参数:它接受以下参数:
- x:它表示另一个具有相同参数的对象。
返回值:方法basic_istream::get()不返回任何内容。
以下是演示basic_istream::swap()的程序:
程序1:
// C++ program to demonstrate
// basic_istream::swap()
#include <bits/stdc++.h>
using namespace std;
// Driver Code
int main()
{
// Input String gfg1
istringstream gfg1("Welcome");
// Input String gfg2
istringstream gfg2("Geeks");
// swap function for swapping
// both the strings
swap(gfg1, gfg2);
cout << gfg1.rdbuf() << " "
<< gfg2.rdbuf() << endl;
return 0;
}
输出:
Geeks Welcome
程序2:
// C++ program to demonstrate
// basic_istream::swap()
#include <bits/stdc++.h>
using namespace std;
// Driver Code
int main()
{
// Input String gfg1
istringstream gfg1("forGeeks");
// Input String gfg2
istringstream gfg2("Geeks");
// swap function for swapping
// both the strings
gfg1.swap(gfg2);
cout << gfg1.rdbuf() << " "
<< gfg2.rdbuf() << endl;
return 0;
}
输出:
Geeks forGeeks
参考: http://www.cplusplus.com/reference/istream/basic_istream/swap/
相关用法
- C++ cin get()用法及代码示例
- C++ std::add_lvalue_reference用法及代码示例
- C++ std::is_nothrow_constructible用法及代码示例
- C++ std::is_trivially_move_constructible用法及代码示例
- C++ std::is_trivially_move_assignable用法及代码示例
- C++ std::is_nothrow_copy_constructible用法及代码示例
- C++ std::make_signed用法及代码示例
- C++ std::rank用法及代码示例
- C++ std::is_nothrow_assignable用法及代码示例
- C++ ratio_equal()用法及代码示例
- C++ std::to_address用法及代码示例
- C++ std::is_trivially_assignable用法及代码示例
- C++ std::remove_const用法及代码示例
- C++ std::is_nothrow_destructible用法及代码示例
- C++ std::remove_volatile用法及代码示例
- C++ std::bit_xor用法及代码示例
- C++ mbrtoc16()用法及代码示例
- C++ mbrtoc32()用法及代码示例
- C++ ios bad()用法及代码示例
- C++ std::is_heap()用法及代码示例
注:本文由纯净天空筛选整理自bansal_rtk_大神的英文原创作品 basic_istream::swap() in C++ with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。