用户将元素输入到二维向量 c

新手上路,请多包涵

我正在尝试实现一种算法,我想将用户输入的元素输入到 2D 向量中,这样我就有了这样的元素:

 reference 1:
1 2 3
3 2 1
1 2 3

所以我想知道如何将元素推回二维向量

我的问题在这里:

 std::vector<vector<int>> d;
//std::vector<int> d;
cout<<"Enter the N number of ship and port:"<<endl;
cin>>in;
cout<<"\Enter preference etc..:\n";
for(i=0; i<in; i++){
cout<<"ship"<<i+1<<":"<<' ';
    for(j=0; j<in; j++){
    cin>>temp;
    d.push_back(temp);// I don't know how to push_back here!!
    }
}

原文由 Ms.CS student 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 426
2 个回答

C++是强类型语言, d 是vector的vector:

 for(i=0; i<in; i++){
    cout<<"ship"<<i+1<<":"<<' ';
    vector<int> row;
    for(j=0; j<in; j++){
      cin>>temp;
      row.push_back(temp);// I don't know how to push_back here!!
    }
    d.push_back(row);
}

原文由 gdlmx 发布,翻译遵循 CC BY-SA 3.0 许可协议

vector<vector<int>> matrix; //declaring 2D vactor as matrix

int val;
cin>>val; //reading size of matrix in val

for(int i=0;i<val;i++){
    vector<int> temp; //make temp vector for storing val for every iteration
    for(int j=0;j<val;j++){
        int x;
        cin>>x;
        temp.emplace_back(x);
    }
    matrix.emplace_back(temp); // push back to matrix, temp vector's all value for every iteration
    temp.clear(); // clear temp vector for every iteration
}

原文由 Raj Jasoliya 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题