主要内容

jc_0802:禁止在 Stateflow 中使用隐式类型转换

规范来源

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

子 ID 建议

  • NA-MAAB - a

  • JMAAB - a

MATLAB 版本

全部

规则

子 ID a

所有运算,包括替换、比较、算术等,都应在同一数据类型的变量之间进行。

函数调用中的实际参量和形式参量的数据类型应该相同。

自定义参数

不适用

示例 - 正确

变量使用相同的数据类型进行计算。

示例:比较运算

示例:算术运算和赋值运算(复合表达式)

变量具有不同的数据类型,但在计算之前进行了显式类型转换。

示例:比较运算

示例:算术运算和赋值运算(复合表达式)

函数调用中实际参量和形式参量的数据类型相同。

示例 - 不正确

变量使用不同的数据类型进行计算。

示例:比较运算

示例:算术运算和赋值运算(复合表达式)

在无符号整数类型变量和有符号整数之间进行计算。

函数调用中实际参量和形式参量的数据类型不同。

理由

子 ID a:

  • 隐式数据类型转换可能会产生意外的结果。

验证

模型顾问检查:检查 Stateflow 中的隐式类型转换 (Simulink Check)

上次更改

R2020a

版本历史记录

在 R2020a 中推出