C++ STL中的unordered_set swap()

C++ STL中的unordered_set swap()

C++ STL中,unordered_set是一个无序不重复的关联容器。与其他容器一样,unordered_set也有swap()函数,用于交换两个容器中的元素。本文将介绍unordered_set swap()函数的用法和示例代码。

语法

unordered_set swap()函数的语法如下:

void swap(unordered_set& s) noexcept;

参数S是一个要与调用对象交换元素的unordered_set对象的引用。noexcept指示此函数不会抛出异常。

示例代码

下面是一个使用swap()函数交换两个unordered_set对象的示例代码:

#include <iostream>
#include <unordered_set>

using namespace std;

int main() {
    // 第一个集合
    unordered_set<string> s1 {"apple", "banana", "orange"};

    // 第二个集合
    unordered_set<string> s2 {"pear", "grape", "peach"};

    // 输出交换前的两个集合的元素
    cout << "Before swapping:\n";
    for (string s : s1)
        cout << s << " ";
    cout << endl;
    for (string s : s2)
        cout << s << " ";
    cout << endl;

    // 使用swap()函数交换两个集合
    s1.swap(s2);

    // 输出交换后的两个集合的元素
    cout << "After swapping:\n";
    for (string s : s1)
        cout << s << " ";
    cout << endl;
    for (string s : s2)
        cout << s << " ";
    cout << endl;

    return 0;
}

运行此程序,输出应该如下:

Before swapping:
banana orange apple 
grape pear peach 
After swapping:
grape pear peach 
banana orange apple 

解释示例代码

这个示例程序演示了如何使用unordered_set swap()交换两个unordered_set对象。 在此示例中,我们首先创建了两个unordered_set对象s1s2。然后,我们输出这两个集合的元素,使用swap()交换这两个集合,最后再次输出这两个集合的元素。

结论

unordered_set swap()函数可以用于交换两个无序不重复的关联容器中的元素。它的语法很简单,只需传递另一个unordered_set对象的引用作为参数。使用swap()函数时,两个容器中的元素将被交换。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

C++ 教程