私は2次元ベクトルvector<vector<int> > det;
を持っています。最後の値または最後の値を別の2次元ベクトルvにpush_back
のd値を割り当てたいと思います。
これは私です試しましたが、v = *(det.rbegin());
ですが、エラーが表示されます。それを行う正しい方法は何ですか?
エラーメッセージ:非スカラ型への変換「のstd ::ベクトル」「のstdは::ベクトル>」あなたの2D配列の最後のエントリは、2次元配列、型ベクターのすなわち<ベクトル<ないイテレータを2Dベクトルに引き渡し、その値を別の2Dベクトルに割り当てる
答えて
を要求しましたint>>ではなく、ベクトル< int>の型です。このように
それはタイプの別の変数
ベクトル<ベクトル< int型に割り当てることはできません>>
これは正常に動作します:
#include<iostream>
#include<vector>
int main(){
std::vector<std::vector<int> > det, det2;
std::vector<int> vector1, vector2, vector3;
vector1.push_back(3);
vector1.push_back(4);
vector1.push_back(5);
vector2.push_back(13);
vector2.push_back(14);
vector2.push_back(15);
vector3.push_back(113);
vector3.push_back(114);
vector3.push_back(115);
std::vector<int> member_of_2darray;
det.push_back(vector1);
det.push_back(vector2);
det.push_back(vector3);
det2.push_back(det.back());
std::cout<<det2[0][2]<<std::endl; // returns 115
//last:element
std::cout<<det.back().back()<<std::endl;
}
編集:あなたはdeperatelyイテレータを使用する場合:ここに実例があります:
#include<iostream>
#include<vector>
int main(){
std::vector<std::vector<int> > det, det2;
std::vector<int> vector1, vector2, vector3;
std::vector<std::vector<int> >::iterator it;
vector1.push_back(3);
vector1.push_back(4);
vector1.push_back(5);
vector2.push_back(13);
vector2.push_back(14);
vector2.push_back(15);
vector3.push_back(113);
vector3.push_back(114);
vector3.push_back(115);
std::vector<int> member_of_2darray;
det.push_back(vector1);
det.push_back(vector2);
det.push_back(vector3);
it = det.end();
det2.push_back(*(it-1));
std::cout<<det2[0][2]<<std::endl; //output: 115
}
detの最後の要素の値を抽出したいが、detのサイズは分かっていない。 – user6291111
det.back()の最後の要素。または、イテレータを使用して、最後の要素は*(it - 1)です。 –
問題は戻り値の型である*(det.rbegin())でした。答えはベクトル
- 1. あるベクトルの値を別のベクトルのインデックスに割り当てるか?
- 2. 2Dベクトルと1Dベクトル
- 3. ベクトルによる値の割り当て
- 4. 2dベクトルを索引値でクラスに分類する
- 5. 2Dベクトルpush_back
- 6. 2Dベクトル/ダイナミックアレイ
- 7. は、2Dベクトルで
- 8. ソート2Dベクトル列
- 9. C++ループの2Dベクトル
- 10. 2DベクトルA *検索
- 11. グループごとに長いベクトルにベクトルを割り当てる
- 12. 割り当て2Dアレイ
- 13. ベクトルポインタメモリ割り当てのベクトル
- 14. 2D配列に値を明示的に割り当てるか?
- 15. 2dベクトルのpush_backのセグメンテーションフォルト
- 16. JS - 2Dベクトルをカーブに変換する
- 17. C++における2Dベクトルの問題
- 18. 2D配列をC++で2Dベクトルに格納する
- 19. Pythonでの2Dベクトル投影
- 20. C++:ベクトルの非連続インデックスに値を割り当てる?
- 21. 2Dベクトルへの割当対象事業者のための一致なし=
- 22. 動的Rにベクトルを割り当て
- 23. STLベクトル割り当て
- 24. STLベクトル割り当て
- 25. 2Dベクトルのサイズを調べる
- 26. 2Dベクトルの行の要素を削除する - イテレータを使用する
- 27. ダイナミック2Dキャラクタ配列の割り当て
- 28. Ruby 2D配列の割り当て
- 29. 2D配列のベクトルを削除
- 30. C++ベクトル内のベクトルの動的割り当て?
エラーメッセージを読んでください。 – user2079303
@ user2079303私はすでにエラーメッセージを読んだが、 'std :: vector>'はどういう意味ですか? – user6291111
コード全体を入力してください。 –