switch〜case の使用例というようにcaseが延々と続くswitch文がでることがしばしあります。case文の内容が
switch( flag ){
case AAAA:
:
case BBBB:
:
case CCCC:
:
:
}
単純なcase文等のように数行で終わってしまうのでしたらまだ良いのですが、
case AAAA:
printf("おぉ!AAAAだ\n");
break;
複雑なcase文等のように複雑になると、switch文の全容がつかみにくくなり読みにくいソースになってしまいます。
case BBBB:
if( flag2 > MIN_LINE ){
switch( flag2 ){
case TYPE1:
:
case TYPE2:
:
:
:
}
}
break;
case文の内容を関数化する
switch( flag ){
case AAA: AAAExecute(); break;
case BBB: BBBExecute(); break;
:
:
}