📜  C++中的basic_istream :: swap()示例(1)

📅  最后修改于: 2023-12-03 15:14:02.234000             🧑  作者: Mango

C++中的basic_istream::swap()示例

在C++中,basic_istream类是用于从输入流读取数据的基类。basic_istream类提供了一个名为swap()的成员函数,用于交换两个输入流对象的内容。

下面是一个示例,演示如何使用basic_istream::swap()函数:

#include <iostream>
#include <sstream>

int main() {
    std::istringstream input1("Hello");
    std::istringstream input2("World");

    std::cout << "Input 1: " << input1.str() << std::endl;
    std::cout << "Input 2: " << input2.str() << std::endl;

    input1.swap(input2); // 交换两个输入流的内容

    std::cout << "\nAfter swapping:" << std::endl;
    std::cout << "Input 1: " << input1.str() << std::endl;
    std::cout << "Input 2: " << input2.str() << std::endl;

    return 0;
}

上述代码中,我们使用了两个std::istringstream对象作为输入流。首先,我们打印了两个输入流的内容。然后,使用input1.swap(input2)交换了两个输入流的内容。最后,我们再次打印交换后的输入流内容。

上述代码的输出将是:

Input 1: Hello
Input 2: World

After swapping:
Input 1: World
Input 2: Hello

因为我们交换了两个输入流的内容,最终的输出结果反映了这个交换。

basic_istream::swap()是一个非常方便的函数,它允许我们在不创建新的输入流对象的情况下交换输入流的内容。这对于需要处理输入流的程序来说很有用。

希望这个简单的示例对你在使用C++中的basic_istream::swap()函数时有所帮助!