switch и лучшая реализация

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
1,419
Реакции
2,508
Помог
59 раз(а)
Как лучше или правильнее всего реализовать например получение команды через switch()? Не уверен в первом варианте используется ли каждый раз натив при проверке, т.е. если первый кейс не сработал то снова будет использоваться get_member и сверяться, или же получается число только 1 раз и тогда отпадает надобность во втором варианте.

Первый вариант:
Код:
switch(get_member(id, m_iTeam))
{
    case TEAM_TERRORIST: {}
    case TEAM_CT: {}
    case TEAM_SPECTATOR: {}
}
Второй вариант:
Код:
new TeamName:iTeam = get_member(id, m_iTeam);
switch(iTeam)
{
    case TEAM_TERRORIST: {}
    case TEAM_CT: {}
    case TEAM_SPECTATOR: {}
}
 
Сообщения
1,661
Реакции
1,486
Помог
24 раз(а)
Сообщения
1,175
Реакции
2,144
Помог
57 раз(а)
Код:
switch(get_member(id, m_iTeam))
fl0wer, Можно для ясности уточнить, правильно ли я понимаю схему работы? В данном случае get_member() будет вызван всего один раз, и далее полученное значение уже сверяется с case'ами. Т.е. кешировать значение в переменную по сути не нужно. Или же get_member() вызывается для каждого case'а?
 
Сообщения
1,175
Реакции
2,144
Помог
57 раз(а)
fantom, Спасибо, как-то не подумал об этом.
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу