C++メモ tryとcatchを#defineなマクロで書いてみる
コード書くのが面倒くさかったのでやってみただけ。
- #defineのマクロ名以降に半角スペース1個入れてコードを書く
- 改行は¥(OSXの場合はOptionキー+¥で\を入力)
- tryは見栄えが悪いので合わせて書いただけ
コードはこんなん。
とりあえず、tryのほう。
#define Try try
んで、catchのほう。
#define Catch ¥ catch(exception& objException)¥ {¥ cout << objException.what() << endl;¥ }¥ catch(...)¥ {¥ /* うまくいけば、"unknown error"と表示されるはず */ ¥ cout << "unknown error" << endl;¥ }
サンプルコードはこんなん。
int main( void ) { Try { // ここで強制的に例外を発生させる throw new exception(); } Catch; return 0; }
んで、実行したらこんなん。
unknown error
いろんな例外を拾うときに便利なんだけど…邪道かなぁ?
んま、メモってことで。
[amazonjs asin="4797375957″ locale="JP" title="プログラミング言語C++第4版"]
ディスカッション
コメント一覧
まだ、コメントがありません