True, если свойство существует
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'
.