📜  push_back a pair c++ (1)

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

如何使用 push_back 在 C++ 容器中添加 Pair

在 C++ 中,Pair 是一个非常有用的结构体,它可以用来存储两个任意类型的变量,这在一些场景下非常方便,比如当你需要同时存储一个键值对时,就可以使用 Pair 来存储。

在使用 Pair 的时候,通常需要将它添加到 STL 容器中,例如 vector、map 等。这时候,就需要用到 push_back 函数。

vector 用法示例

下面是一个 vector 中添加 Pair 的示例:

#include <iostream>
#include <vector>
#include <utility>

int main() {
    std::vector<std::pair<int, std::string>> vec;

    vec.push_back(std::make_pair(1, "apple"));
    vec.push_back(std::make_pair(2, "banana"));
    vec.push_back(std::make_pair(3, "orange"));

    for (auto& p : vec) {
        std::cout << p.first << " " << p.second << std::endl;
    }

    return 0;
}

上述代码中,我们先定义了一个 vector,其中存储的是 int 和 string 组成的 Pair。接下来,使用 push_back 函数将三个键值对添加到 vector 中。最后,使用 for 循环遍历 vector,并打印出每个键值对的值。

map 用法示例

除了 vector,还有很多其他的容器也可以使用 Pair。其中,最常用的就是 map。下面是一个 map 中添加 Pair 的示例:

#include <iostream>
#include <map>
#include <string>

int main() {
    std::map<std::string, int> m;

    m.insert(std::make_pair("apple", 1));
    m.insert(std::make_pair("banana", 2));
    m.insert(std::make_pair("orange", 3));

    for (auto& p : m) {
        std::cout << p.first << " " << p.second << std::endl;
    }

    return 0;
}

上述代码中,我们定义了一个 map,其中键是字符串,值是整数。接下来,使用 insert 函数将三个键值对添加到 map 中。最后,使用 for 循环遍历 map,并打印出每个键值对的值。

总结

在 C++ 中,使用 Pair 和容器配合可以大大简化一些处理逻辑,而 push_back 函数则是将 Pair 添加到容器中的关键。需要注意的是,在使用 push_back 函数之前,需要确保 vector 已经正确的初始化。在使用 Pair 时,我们也可以使用 make_pair 函数来快速创建 Pair 对象,而不必手动构造。