主要内容

mp_0022:条件表达式的格式

自 R2024b 起

规范来源

控制算法建模规范 - 使用 MATLAB®Simulink®Stateflow®

子 ID 建议

  • NA-MAAB - a、b、c1/c2

  • JMAAB - a、b、c1/c2

MATLAB 版本

全部

规则

子 ID a

条件表达式应写作计算结果为单一逻辑值(true 或 false)的表达式。

示例 - 正确
% foo
・・・ a non-logical variable
if (foo ~= 0)
示例 - 不正确
% foo
・・・ a non-logical variable
if foo

子 ID b

应定义条件表达式中每行二元运算符的数量。

示例 - 正确
% If up to 3 is allowed 
if (foo1 && foo2) ...
   || (foo3 && foo4 && foo5)
示例 - 不正确
% If up to 3 is allowed
if (foo1 && foo2) || (foo3 && foo4 && foo5)
自定义参数

条件表达式中每行二元运算符的数量。

子 ID c1

将条件表达式分成多行时,应在逻辑运算符后立即插入换行符,并缩进后续行。

示例 - 正确
if foo1 || ...
   foo2 || ...
   foo3
end
示例 - 不正确
if foo1 ...
   || foo2 ...
   || foo3
end

子 ID c2

将条件表达式分成多行时,应在逻辑运算符前立即插入换行符,并且后续行应对齐缩进。

示例 - 正确
if foo1 ...
   || foo2 ...
   || foo3
end
示例 - 不正确
if foo1 || ...
   foo2 || ...
   foo3
end

理由

子 ID a:

  • 明确了 true 和 false 的条件。

子 ID b:

  • 对运算符的数目进行限制可以更轻松地了解各个条件之间的关系。

子 ID b:

  • 对运算符的数目进行限制可以更轻松地了解各个条件之间的关系。

子 ID c1、c2:

  • 每种条件之间的关系变得更容易理解。

验证

模型顾问检查:检查条件表达式的描述 (Simulink Check)

上次更改

R2024b

另请参阅

运算符优先级

版本历史记录

在 R2024b 中推出