前提・実現したいこと
C++においてvectorの2次配列を作ろうとしています
00 01 02
10 11 12
20 21 21
と表示したいが以下のエラーメッセージが発生しました。
どうすれば意図どうりになりますか?
発生している問題・エラーメッセージ
ハンドルされない例外が 0x74BF46D2 で発生しました (test++.exe 内):
該当のソースコード
C++
1#include <iostream> 2#include <vector> 3using namespace std; 4int main() 5{ 6 int i ,j ; 7 vector <vector <int>> test; 8 test.emplace_back(); 9 10 for (i = 0; i < 3; i++) 11 { 12 for (j = 0; j < 3; j++) 13 { 14 int x = i * 10 + j; 15 test.at(i).push_back(x); 16 } 17 } 18 for (i = 0; i < 3; i++) 19 { 20 for (j= 0; j < 3; j++) 21 { 22 if (test[i][j] < 10) 23 cout << "0"; 24 cout << test[i][j] << ' '; 25 } 26 cout << endl; 27 } 28 29 return 0; 30}
https://teratail.com/questions/324017を参考に
8行目 test.emplace_back();
at(i)がエラーにならないようにした
補足情報(FW/ツールのバージョンなど)
Visual Studio 2019 バージョン 16.8.5。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/24 06:23