na_0022: Recommended patterns for Switch/Case statements

Рекомендации ID Sub

  • NA-MAAB — a

  • JMAAB — Не поддерживаемый

Версии MATLAB

Все

Правило

ID Sub a

Switch/Case операторы должны использовать постоянные значения для Case аргументы.

Входные переменные не должны использоваться в Case аргументы.

Пользовательский параметр

Не применяется

Пример — правильный
function outVar = NA_0022_Pass(SwitchVar)
%#codegen
    switch SwitchVar
        case Case_1_Parameter % Parameter
            outVar = 0;
        case NA_0022.Case_2 % Enumerated Data Type    
            outVar = 2;
        otherwise
            outVar = 10;
    end
end
Пример — неправильный
function outVar = NA_0022_Fail(Case_1,Case_2,Case_3,SwitchVar)
%#codegen
    switch SwitchVar
        case Case_1
            outVar = 1;
        case Case_2
            outVar = 2;
        case Case_3
            outVar = 3;
        otherwise
            outVar = 10;
    end
end

Объяснение

ID Sub a:

  • Улучшает симуляцию модели и тестируемость.

  • Генерация кода не может быть возможной.

В последний раз измененный

R2020a

Введенный в R2020a