switch 文の話の続き。
今日、C++ の本を見てみたら、どうも switch のラベルは 「switch( 式 )」 の直後に書いていいらしいということがわかった。
具体的には:
switch( peach() ) case 0: if ( banana() ) case 1: { case 2: pear(); } // case 3: // これはエラー else case 4: { case 5: melon(); case 6: mandarin(); }
の、case 0:。
case1: と case 4: は意外な位置にあるが、合法である。
case1: と case 2: は同じことだし、両方とも人に勧められる case ラベルの位置ではないが、 case 2: の方が幾分マシであるように思える。case 4: と case 5: も同様で、case 5: の方がマシに思える。
いずれにせよ、こういうことを、仕事で書くことはお勧めしない。