如何在c ++中从对向量中获取对值

时间:2015-09-21 15:07:48

标签: c++11 vector

我按以下方式访问对向量的值。

for(unordered_map<int,vector<pair<int,int>>>::iterator it;it!=mul2.end();it++)
{
    int value=it->first;
    if(value%p!=0)
        continue;
    int quotient=value/p;
    auto it1=mul1.find(quotient*q);
    if(it1==mul1.end())
        continue;
    vector<pair<int,int>> list1=it->second;
    vector<pair<int,int>> list2=it1->second;
    for(int j=0;j<list1.size();j++)
    {
        for(int k=0;k<list2.size();k++)
        {
            if((list1[i]).second!=(list[2]).first)
            {
                flag=1;break;
            }
            if(flag)
                break;
        }
    }
    if(flag)
        break;
}
if(flag)
    printf("Yes\n");
else
    printf("No\n");

当我访问list [i] .second时,它给了我以下错误。

error: missing template arguments before ‘[’ token

我知道如何使用迭代器访问它,但我不知道这种方法有什么问题。

0 个答案:

没有答案