今日見かけたコード
ループ内のswitch文の最後がこんな感じでした。
switch (hoge) { case CODE1: doSomething(); break; case CODE2: doSomething(); break; case CODE3: doSomething(); break; default: // ありえない break; }
「ありえない」とコメント書くぐらいなら、例外投げるとかするのが普通じゃないですかね。どうやら静的解析ツールが「switchにdefaultがない」と警告が出るので入れただけっぽいのです。ループ中でこういうのって危険だと思うのですが。一種の例外の握りつぶしですよね。break文を入れているので「ステートメントが無い」と警告も出てないのが痛い。