Определите если свойство объекта
tf = isprop (obj, PropertyName)
tf = isprop(obj,PropertyName) возвращает true, если заданный PropertyName является свойством объекта obj. В противном случае isprop возвращает логический false. Задайте PropertyName как вектор символа или скаляр строки.
Если obj является массивом, isprop возвращает логический массив тот же размер как obj. Каждый истинный элемент tf соответствует элементу obj, который имеет свойство, PropertyName.
Если obj является пустым объектом или массивом пустых объектов, isprop возвращает пустой логический массив, даже если PropertyName является свойством obj.
В то время как isprop возвращает true, если класс объекта задает свойство того имени, классы могут управлять доступом к значениям свойств путем определения атрибутов свойства. Доступ к свойству может быть задан как:
Читаемый и перезаписываемый
Только для чтения
Только для записи
Доступный только для определенных методов класса
Поэтому isprop может указать, что свойство существует, но вы не можете смочь получить доступ к тому свойству. Для получения дополнительной информации см. Получение информации О Свойствах.
Этот пример использует isprop, чтобы определить, является ли XDataSource свойством объекта h прежде, чем попытаться установить значение свойства:
h = plot(1:10); if isprop(h,'XDataSource') set(h,'XDataSource','x') else error(['XDataSource not a property of class ',class(h)]) end
Поскольку XDataSource является свойством h, его значение установлено к 'x'.