matlab.System Constructor

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

Описание

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

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

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

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

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

При вызове Системного объекта свойства задаются как разделенные запятой пары из Name,Value аргументы или, если задано, Value-only аргументы. 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 объект, использующий только аргумент value для StartValue и пары "имя-значение" для других свойств.

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

См. также

| | |

Введенный в R2010a