主要内容

在系统对象中使用全局变量

全局变量是可以在其他MATLAB中访问的变量®函数或Simulink万博1manbetx®阻碍。

MATLAB中的系统对象全局变量

对于仅在MATLAB中使用的系统对象,可以在系统对象中定义全局变量™ 类定义文件的方式与在其他MATLAB代码中定义全局变量的方式相同(请参见全局变量).

Simulink中的系统对象全局变量万博1manbetx

用于在中使用的系统对象MATLAB系统在Simulink万博1manbetx中,也可以像在MATLAB中一样定义全局变量。但是,要在Simulink中使用全局变量,必须在斯捷潘普,updateImpl输出方法,如果您已在调用的方法中声明了它们斯捷潘普,updateImpl输出分别地

您可以为MATLAB系统块的方式与对MATLAB函数块(参见数据存储(万博1manbetxSimulink)全球共享数据(万博1manbetxSimulink)).喜欢MATLAB函数块,还必须使用与数据存储存储器块以在Simulink中使用全局变量。万博1manbetx

例如,此类定义文件定义了一个系统对象,该对象在每个时间步将矩阵的第一行递增1getGlobalNamesImpl如果类文件是P编码的。

classdefGlobalSysObjMatrix方法(访问=受保护)作用y=STEPIMP(obj)全球的B、 B(1,:)=B(1,:)+1;y=B;终止%仅当类文件为P编码时才包括getGlobalNamesImpl。作用globalNames=getGlobalNamesImpl(~)globalNames={“B”};终止终止终止
该模型包括全局目标矩阵对象MATLAB系统块和关联的数据存储存储器