徒然雑記

if文?switch文、どちらを使う?

なんとなく、 switch文は敬遠されるような気がするのですが…
気のせいでしょうか?
過去に、 switch文は???とか、印象に悪い事を言われたような記憶があるのですが思い出せないでいます。

さて、Aが、Bもしくは Cもしくは Dもしくは Eの場合、func()を行う。
という場合、if文ですか?switch文ですか?

if文の場合

if((a == b) || (a == c) || (a == d) || (a == e)) {
    func();
}

となるのですが、単純な変数ならまだしも、長い変数名だと見難くなりがちでしょう。

で、switch文だと、

switch(a) {
    case b:
    case c:
    case d:
    case e:
        func();
    break;
} /* switch(a) */

な感じですよね。
こっちの方がスマートだと思えるのですが、いろいろなソースを見ていると、if文が多いのは、何故なんでしょう?
やはり、switch文には何かあるんでしょうか…、ん~、思い出せない。

まぁ、私は、お疲れモードですごいコーディングしたんですけどね。

最終更新のRSS
Last-modified: 2010-03-26 (金) 14:35:54 2889日前
HTML convert time: 0.027 sec.