初始化对象数组
调用构造函数
在创建对象数组,MATLAB®可以调用类的构造函数不带参数,即使构造函数没有构建一个对象数组。例如,假设您定义下面的类:
classdefSimpleValue属性价值结束方法函数obj = SimpleValue (v) obj。值= v;结束结束结束
执行下列语句创建一个数组:
(7)= SimpleValue (7)
错误使用SimpleValue(第7行)没有足够的输入参数。
这个错误是因为MATLAB调用不带参数的构造函数来初始化元素1
通过6
在数组中。
你的类必须支持输入参数构造函数的金宝app语法。一个简单的解决方案是测试输入参数个数
时的情况输入参数个数= = 0
执行任何代码,但不是错误:
classdefSimpleValue属性价值结束方法函数obj = SimpleValue (v)如果输入参数个数> 0 obj。值= v;结束结束结束结束
使用修改后的类定义,前面的数组赋值语句执行没有错误:
(7)= SimpleValue (7)
= 1 x7 SimpleValue数组属性:价值
对象赋给数组元素(7)
使用传递给构造函数的输入参数作为分配给属性的值:
(7)
ans = SimpleValue属性:值:7
MATLAB中包含的对象创建元素(1,1:6)
没有输入参数。属性的默认值为空[]
。例如:
(1)
ans = SimpleValue属性:价值:[]
MATLAB调用SimpleValue
构造函数,返回的对象复制到数组的每个元素。
对象属性的初始值
当MATLAB调用不带参数的构造函数来初始化一个对象数组,发生下列作业:
如果属性定义指定默认值,MATLAB指定这些值。
如果没有输入参数的构造函数分配值,MATLAB指定这些值。
如果没有前面的情况下适用,MATLAB的价值分配空双(也就是说,
[]
)的财产。