na_0021:MATLAB 函数中的字符串
子 ID 建议
NA-MAAB - a
JMAAB - a
MATLAB 版本
全部
规则
子 ID a
MATLAB 函数中不应使用字符串的赋值语句。
自定义参数
不适用
示例 - 不正确
MATLAB 函数中正在使用字符串的赋值语句。
function y = fcn(u) %#codegen str = 'A'; for i = 1:u str = [str 'B']; end if strcmp(str, 'ABB') y = int16(1); else y = int16(0); end end
理由
子 ID a:
MATLAB 函数将字符串存储为字符数组。因此,在同一个变量中存储不同长度的字符串不支持动态内存分配,从而阻止字符串的存储。
当在 Switch Case 模块中使用字符串时,请考虑使用枚举类型
验证
模型顾问检查:检查 MATLAB Function 模块中字符向量的使用 (Simulink Check)
上次更改
R2020a
另请参阅
版本历史记录
在 R2020a 中推出