Main Content

na_0022: Recommended patterns for Switch/Case statements

R2020a 以降

該当ガイドライン

Control Algorithm Modeling Guidelines - Using MATLAB®, Simulink®, and Stateflow®

サブ ID 推奨事項

  • NA-MAAB — a

  • JMAAB — サポートなし

MATLAB バージョン

すべて

ルール

サブ ID 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 a:

  • モデル シミュレーションとテスト容易性を改善します。

  • コード生成は実行できない場合があります。

検証

モデル アドバイザー チェック: Check usage of recommended patterns for Switch/Case statements (Simulink Check)

最終更新

R2020a

バージョン履歴

R2020a で導入