将对值存储在二维向量中的向量C ++中

问题描述

我已获得2D向量(A)。我需要存储包含元素0的向量的行和列索引的值。

这是我的代码-

vector<pair<int,int>>v;
   for(int i=0;i<A.size();i++){
       for(int j=0;j<A[i].size();j++){
           if(A[i][j]==0){
               v.push_back(make_pair(i.first,j.second));
           }
       }
   }

但是我一直收到这个错误

错误:'__gnu_cxx :: __ alloc_traitsstd :: allocator , std :: vector> :: value_type'{aka'class std :: vector'}没有 名为“第一”的成员

错误:'__gnu_cxx :: __ alloc_traitsstd :: allocator , std :: vector> :: value_type'{aka'class std :: vector'}没有 名为“第二”的成员

解决方法

int没有名为firstsecond的成员。

要添加到表示2D索引的对向量中,您只需要:

if(A[i][j]==0) {
    v.push_back({i,j});
}
,

在进行配对时,您只需要将值输入到make_pair函数中即可。 如果要用(i,j)个值配对,则写make_pair(i,j)。要访问这些值,请使用firstsecond成员。

if(A[i][j] == 0){
   v.push_back(make_pair(i,j));
}

要访问这些值,请输入v[i].firstv[i].second

,

这应该可行

vector<pair<int,int>>v;
for(int i=0;i<A.size();i++){
   for(int j=0;j<A[i].size();j++){
       if(A[i][j]==0){
           v.push_back(make_pair(i,j));
       }
   }
}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...