в функции переключения, как получить значение регистра в каждом блоке - PullRequest
0 голосов
/ 19 сентября 2019

Я использую переключатель в своем коде, и я хочу получить значение регистра в каждом блоке регистра.как я могу получить это?

switch(value)
{
    case Value1:
        function1(Value1); 
        // i want something like this : function1(getCaseValue)      
    break;
    case Value2:
        function1(Value2); 
    break;
    case Value3:
        function2(Value3);       
    break;
}

Ответы [ 2 ]

3 голосов
/ 19 сентября 2019

Внутри ваших операторов case вы можете вызывать функцию с value variable function1(value).Вот полный код:

switch(value) {
    case Value1:
        function1(value); 
    break;
    case Value2:
        function1(value); 
    break;
    case Value3:
        function2(value);       
    break;
}

Если вы всегда будете вызывать одну и ту же функцию в определенном наборе значений, вы даже можете упростить свои операторы переключения:

switch(value) {
    case Value1:
    case Value2:
        function1(value); 
    break;
    case Value3:
        function2(value);       
    break;
}
0 голосов
/ 19 сентября 2019

Если у вас одинаковая обработка для разных случаев, вместо дублирования обработки вы можете написать более понятный и простой код, скомбинировав их следующим образом:

switch (value) {
    case 0:
    case 1:
    case 2:
        function1(value);
        break;
}

Если вы хотите добавить дополнительную обработку для другихслучаи, добавьте их тоже:

case 3:
    function2(value);
    break;

и, возможно, включить по умолчанию:

default:
    function3(value);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...