提示コードですがtry catch{ } 構文を使ってvectorで出た例外を補足したいのですがなぜ画面に何も表示されないのでしょうか?たとえtry catch構文そもそもがおかしくても最後のprintf();であああああと出力されるはずなのですがなぜ何も表示されないのかわかりません。
保存して cl main.cppをしてmain.exe を実行 表示なし
保存して cl /EHsc main.cpp をしてmain.exe 実行 表示なし
cl /EHsc のほうのコマンドは警告文やnote など何も表示されないため正常にコンパイルが通っているものと思われるのですが以前として何も表示されません。
#include "stdio.h" #include <vector> int main() { //idx.emplace_back(0); //idx[0].emplace_back(0); try { std::vector<std::vector<int>> idx; printf("idx: %d\n",idx[0][0]); }catch(std::exception &e) { printf("いいいいいいい\n"); //printf("%s\n",e.message()); printf("%s\n,",e.what()); } printf("あああああああ\n"); return 0; }
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/26 06:23
退会済みユーザー
2020/07/26 08:12 編集