switch と初期化

http://d.hatena.ne.jp/Isoparametric/20070328/1175093521

初期化はダメなんですね。知らなかった。

switch 文の括弧は break; で抜けたりするあたりからして、ブロックとは思えないので変数の宣言さえしようと思わなかった。宣言したいときはブロック書いてその中で、ですね。http://d.hatena.ne.jp/noya/20070327#1175011966の方が書いてたのと大体同じですね。 fall-through な場合は、switch のすぐ下で宣言ですね*1。 case の後の処理が多いなら関数に……

C に戻るまでもなく現在進行形で C ってのがすごく悲しいですね。

*1:ここで初期化ができないってのが驚き。いや、使うことないですけど。