中指定对象作为输入MATLAB编码器应用程序
在MATLAB®编码器™App,指定值类对象的输入类型:
定义值类。例如,定义一个类
myRectangle
.classdefmyRectangle属性长度;宽度;结束方法函数obj = myRectangle(l,w)如果Nargin > 0 obj。长度= l;obj。宽度= w;结束结束函数Area = calcarea(obj)长度* obj.width;结束结束结束
定义一个函数,将值类的对象作为输入。例如:
函数Z = getarea(r)% # codegenZ = calcarea(r);结束
在应用程序中,为创建一个项目
getarea
.在定义输入类型页,以下列方式之一指定对象的类型:
自动定义对象输入类型
编写测试文件
getarea_test
属性的对象myRectangle
类,并将其传递给getarea
.例如:rect_obj = myRectangle(4,5);Rect_area = getarea(rect_obj);disp (rect_area);
在应用程序中定义输入类型页,指定测试文件
getarea_test
.点击自动定义输入类型.
举例说明
如果你提供了一个值类的对象,应用程序使用示例对象的属性的大小和类型。
在MATLAB中定义一个值类的对象
myRectangle
.rect_obj = myRectangle(4,5)
在应用程序中定义输入类型页面,点击让我直接输入输入或全局类型.
单击输入参数右侧的字段
r
.选择通过实例定义.
输入
rect_obj
或者从工作区变量列表中选择它。应用程序从示例对象中确定属性及其大小和类型。
或者,您可以提供值类的名称,myRectangle
,或编码器。ClassType
对象。定义编码器。ClassType
对象,使用coder.typeof
.例如:
在MATLAB中定义a
编码器。ClassType
具有相同属性的对象rect_obj
.T = code .typeof(rect_obj)
在应用程序中,提供
t
举个例子。
若要更改属性的大小或类型,请单击属性右侧的字段。
类型定义和类定义文件的一致性
当你生成代码时,你在应用程序中定义的属性必须与类定义文件中的属性一致。如果类定义文件具有代码不使用的属性,则应用程序中的类型定义不必包含这些属性。代码生成器删除代码不使用的属性。
使用对象作为入口点函数输入的限制
作为对象的入口点函数输入有以下限制: