c++ - 我怎样才能在 C++ 中循环对

标签 c++ algorithm c++11 std-pair

<分区>

我试图成对打印元素,但它抛出一个错误:“没有匹配的函数调用”
代码:

#include <utility>
#include <iostream>
using namespace std;

int main()
{
    pair<int, string> pairVec;
    pairVec = make_pair(1, "One");
    pairVec = make_pair(2, "Two");
    pairVec = make_pair(3, "Three");
    for(auto iter:pairVec)
    {
        std::cout << "First: " << iter.first << ", Second: "
                  << iter.second << std::endl;
    }
    return 0;
}

最佳答案

您根本没有制作 vector 。您可能想这样做:

int main()
{
    std::vector<pair<int, string>> pairVec;  // create a vector of pairs
    pairVec.emplace_back(1, "One"); // adding pairs to the vector
    pairVec.emplace_back(2, "Two");
    pairVec.emplace_back(3, "Three");
    for (auto iter : pairVec) {
        std::cout << "First: " << iter.first << ", Second: "
        << iter.second << std::endl;
    }
    return 0;
}

关于c++ - 我怎样才能在 C++ 中循环对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53777225/

相关文章:

java - 为什么这个算法使用Java中的按位与运算符?

string - 通过对字符串进行某些操作来检查括号字符串是否平衡

c++ - 现实程序中来自 c++ <random> 库的随机数生成器

c++ - 为什么可变参数模板的模板特化与非可变模板的特化不同?

c++ - 在不使用布局的情况下在 QT 中调整小部件

c++ - 使用 C++ 模板魔法进行通用和存在量化

c++ - 如何使用 std::istream 读取 bool 值

c++ - 一个函数可以返回超过 1 个变量/结构/vector 吗?

arrays - 使用此算法在最坏情况下二分查找将进行多少次比较?

c++ - constexpr 函数求值可以做尾递归优化吗