廣島さん、ありがとうございます。うまく行きました。
Tsutomu Hiroshima <tsutomu@...> さん writes.
> C++ の catch & throw は ポインタを使ってはいけません.
ASCII の「標準C++の基礎知識」に、このようなポインタを使った例があったも
のですから(^^;。
> catch(string strErr) {
> cout << strError << endl;
下の strError が strErr の typo になっているようです。
引数がが文字列型の場合と整数型の場合に異なる catch を起動しわける、と
いうことを行いたかったのですが、
#include <iostream>
#include <string>
using namespace std;
void ThrowFunc() throw(string){
throw string("Throw exception");
}
main() {
try {
ThrowFunc();
//throw int(999);
//throw string("Throw exception");
}
catch(string strErr) {
cout << "Case str: "<< strErr << endl;
}
catch(int intErr) {
cout << "Case num: " << intErr << endl;
}
cout << "being continued..." << endl;
return 0;
}
とするとうまくいきました。throw int とか throw string とかで型を指定する
のですね。勉強になりました。
--
本田博通(閑舎)
Hiromichi Honda <raku@...>