switch
문 을 사용하는 방법과 약 10 개의 작업이 예상되는 if
30 개의 unsigned
열거 형에 대한 문 을 사용하는 가장 좋은 방법은 무엇입니까 (현재는 같은 작업 임). 성능과 공간을 고려해야하지만 중요하지는 않습니다. 나는 발췌 문장을 추상화 했으므로 명명 규칙에 대해 나를 싫어하지 마십시오.
switch
성명서:
// numError is an error enumeration type, with 0 being the non-error case
// fire_special_event() is a stub method for the shared processing
switch (numError)
{
case ERROR_01 : // intentional fall-through
case ERROR_07 : // intentional fall-through
case ERROR_0A : // intentional fall-through
case ERROR_10 : // intentional fall-through
case ERROR_15 : // intentional fall-through
case ERROR_16 : // intentional fall-through
case ERROR_20 :
{
fire_special_event();
}
break;
default:
{
// error codes that require no additional action
}
break;
}
if
성명서:
if ((ERROR_01 == numError) ||
(ERROR_07 == numError) ||
(ERROR_0A == numError) ||
(ERROR_10 == numError) ||
(ERROR_15 == numError) ||
(ERROR_16 == numError) ||
(ERROR_20 == numError))
{
fire_special_event();
}