C ++ Длинный оператор switch или поиск с картой?

В моем приложении C ++ у меня есть некоторые значения, которые действуют как коды для представления других значений. Чтобы перевести коды, я спорил между использованием оператора switch или stl map. Переключатель будет выглядеть примерно так:

int code;
int value;
switch(code)
{
case 1:
    value = 10;
    break;
case 2:
    value = 15;
    break;
}

Карта будетstl::map<int, int> и перевод будет простым поиском с кодом, используемым в качестве значения ключа.

Какой из них лучше / эффективнее / чище / принят? Зачем?

Ответы на вопрос(12)

Ваш ответ на вопрос