ebool keep_trying= true;
do {
char fname[80]; // std::string is better
cout Image "Please enter the file name: ";
cin Image fname;
try {
A= read_matrix_file(fname);
...
keep_trying= false;
} catch (cannot_open_file& e) {
cout Image "Could not open the file. Try another one!\n";
} catch (...)
cout Image "Something is fishy here. Try another file!\n";
}
} while (keep_trying);
此代碼從Discovering modern c++。我不明白「try-block」中的「A」和下一個catch-block中的「e」(cannot_open_file & e)異常在C++中如何工作?
您是按順序閱讀本書嗎? – StoryTeller
我懷疑這本書只是在沒有解釋概念的情況下拋出一段代碼。你讀到段落結尾了嗎? – user463035818
實際上只有這個片段,沒有人可以知道'A'究竟是什麼,它是一些函數的返回值,它的定義你不會告訴我們(我非常肯定它可以在書中找到)。你可以問一下'x = foo()中'x'的含義;' – user463035818