Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

matlab.System 构造函数

构造具有 Name,Value 对组或仅限值输入的 System object

说明

function obj = ObjectName(varargin) 构造一个 ObjectName System object™ 并根据名称-值对组输入设置属性。

System object 构造函数是类文件中的公共方法。方法名称与类名称匹配。当您创建 System object 时,将会调用构造函数,将属性初始化为非默认值。构造函数将返回一个新的 System object。

构造函数主体

在构造函数内,使用下表中的语法之一调用 setProperties

输入参数构造函数主体示例
Name,Value 对组setProperties(obj, nargin, varargin{:})名称-值对组的构造函数
Name,Value 对组和仅包含值的参数setProperties(obj, nargin, varargin{:}, 'Prop1', ..., 'PropN')仅包含值的属性的构造函数

当您调用 System object 时,属性指定为以逗号分隔的 Name,Value 对组参数,或指定为只包含 Value 的参数。Name 是属性名称,Value 是对应的值。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

仅包含值的参数对于经常设置为非默认值的属性很有用。例如,读取文件的 System object 通常需要重置文件名属性。

提示:请勿在构造函数主体内分配属性值。如果在多个环境中使用 System object(例如在 System 模块中、MATLAB 脚本中和生成的代码中),这种做法可能会导致问题。此时应使用默认属性值,或更改 setupImpl 中的值。

示例

全部展开

定义允许名称-值对组输入参数的 System object 构造函数。

为名称-值对组输入定义构造函数。

function obj = Counter(varargin)
    % Support name-value pair arguments when constructing object
    setProperties(obj,nargin,varargin{:})
end

在此构造函数主体中,使用名称-值对组创建 Counter 对象。

myObj = Counter('StartValue',0,'UseIncrement',true);

定义一个输入属性仅限值的 System object 构造函数。

定义一个包含 'StartValue' 输入的构造函数,输入仅限值。此构造函数还允许名称-值输入。

function obj = Counter(varargin)
    % Support value-only argument for StartValue when instantiating
    setProperties(obj,nargin,varargin{:},'StartValue');
end

在此构造函数主体中,创建一个 Counter 对象,在该对象中对 StartValue 使用仅限值参数,对其他属性使用名称-值对组。

myObj = Counter(0,'UseIncrement',true);
在 R2010a 中推出