mATLAB. Системный Конструктор

Создайте Системный объект с парами Name,Value или входными параметрами только для значения

Синтаксис

function obj = ObjectName(varargin)

Описание

function obj = ObjectName(varargin) создает Систему ObjectName object™ и устанавливает свойства от входных параметров пары "имя-значение".

Конструктор Системного объекта является открытым методом в файле класса. Имя метода совпадает с именем класса. Когда вы создаете Системный объект, конструктор называется, чтобы инициализировать свойства к значениям не по умолчанию. Конструктор возвращает новый Системный объект.

Тело конструктора

В конструкторе вызовите setProperties с помощью одного из синтаксисов в таблице.

Входные параметрыТело конструктораПример
Пары Name,ValuesetProperties(obj, nargin, varargin{:})Конструктор для пар "имя-значение"
Пары Name,Value и аргументы только для значенияsetProperties(obj, nargin, varargin{:}, 'Prop1', ..., 'PropN')Конструктор для свойства только для значения

Когда вы вызываете Системный объект, свойства заданы как пары, разделенные запятой аргументов Name,Value или, если задано, Value - только аргументы. Name является именем свойства, и Value является соответствующим значением. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Аргументы только для значения полезны для свойств, которые часто устанавливаются в значения не по умолчанию. Например, Системные объекты, которые читают файл часто, требуют, чтобы свойство имени файла было сброшено.

Совет: В теле конструктора не присваивайте значения свойств. Эта практика может вызвать проблемы, если вы используете Системный объект в нескольких средах (такой как в блоке System в скрипте MATLAB, и в сгенерированном коде). Вместо этого используйте значения свойств по умолчанию или значения изменения в setupImpl.

Примеры

развернуть все

Задайте конструктора Системного объекта, который позволяет входные параметры пары "имя-значение".

Задайте конструктора для входных параметров пары "имя-значение".

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

С этим телом конструктора создайте объект Counter с помощью пар "имя-значение".

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

Задайте конструктора Системного объекта с входным свойством только для значения.

Задайте конструктора с '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