📜  在 C++ 中初始化 unordered_set 的不同方法(1)

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

在 C++ 中初始化 unordered_set 的不同方法

unordered_set 是一个带有哈希表的关联容器,它存储独一无二的元素。在 C++ 中,有多种方法可以初始化 unordered_set。以下是一些常用的方法:

方法一:使用花括号初始化列表
#include <unordered_set>
#include <iostream>

int main() {
    std::unordered_set<int> mySet {1, 2, 3, 4, 5};
    for (int x : mySet) {
        std::cout << x << " ";
    }
    std::cout << std::endl;
    return 0;
}

这将创建一个包含值为 1、2、3、4 和 5 的元素的 unordered_set。

方法二:使用其他 unordered_set 初始化
#include <unordered_set>
#include <iostream>

int main() {
    std::unordered_set<int> mySet1 {1, 2, 3};
    std::unordered_set<int> mySet2 {mySet1.begin(), mySet1.end()};
    for (int x : mySet2) {
        std::cout << x << " ";
    }
    std::cout << std::endl;
    return 0;
}

这将创建一个与 mySet1 相同的 unordered_set。

方法三:使用 insert() 函数添加元素
#include <unordered_set>
#include <iostream>

int main() {
    std::unordered_set<int> mySet;
    mySet.insert(1);
    mySet.insert(2);
    mySet.insert(3);
    for (int x : mySet) {
        std::cout << x << " ";
    }
    std::cout << std::endl;
    return 0;
}

这将创建包含值为 1、2 和 3 的元素的 unordered_set。您可以使用 insert() 函数添加更多元素。

方法四:使用大括号和 make_pair()
#include <unordered_set>
#include <iostream>

int main() {
    std::unordered_set<std::pair<int, int>> mySet {std::make_pair(1, 2), std::make_pair(2, 3)};
    for (auto x : mySet) {
        std::cout << "(" << x.first << ", " << x.second << ") ";
    }
    std::cout << std::endl;
    return 0;
}

这将创建包含值为 (1, 2) 和 (2, 3) 的元素的 unordered_set。

这只是一些初始化 unordered_set 的方法。使用这些方法之一,您可以创建一个 unordered_set 并开始添加和查找元素。