LoginSignup
0
1

More than 5 years have passed since last update.

c > default: assert(!"不正な状態"); | default: || do nothing

Last updated at Posted at 2015-07-23

引用: ゲームプログラマのためのコーディング技術 by 大圖衛玄(Moriharu Ohzu)さん

switch (state) {
    case STATE_WAIT: wait(); break; // 待機状態
    case STATE_WALK: walk(); break; ...
    ...
    default: assert(!"不正な状態"); // コメント付きのassert
}

不正な状態になりdefault節に到達すると、次のようなassertのメッセージが表示されます。コメントによってエラーの原因を、わかりやすく伝えることができます。

Assertion failed; !"不正な状態", file player.cpp line 64



一方で、default節が正常で何も処理しない場合は do nothing というコメントをつけるという書き方をどこかの本で見た。
switch (state) {
    default:
       // do nothing
       break;
}

// do nothing がついていない場合、「コーディング途中なのか?」とコードを読んだ人が疑問を持つかもしれないが、// do nothing があれば「ここでは何もしないのだ」と意図が明確になる。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1