Составители:
215
• если вход является объектом данного класса, то он же являет-
ся выходом;
• преобразует вход к требуемой форме;
• присваивает значения различным полям структуры;
• использует функцию class для того, чтобы приписать объекту
соответствующую метку.
Функции isa и class. Эти функции используются конструкто-
ром, но могут применяться и вне каталога класса.
Функция
isa(a, 'class_name') проверяет, принадлежит ли объ-
ект a данному классу.
Пример. Каждое из следующих выражений истинно
isa(pi, 'double') isa('hello', 'char') isa(p, 'polynom')
ans = 1 ans = 1 ans = 1
При использовании вне контекста методов функция class до-
пускает только один аргумент.
Команда class(a) возвращает строку, содержащую имя класса
для объекта a.
Пример. Последовательность операторов возвращает соот-
ветственно
class(pi) class('hello') class(p)
ans = 'double' ans ='char' ans =''polynom'
Объекты и массивы. В системе MATLAB5 к основному
объекту системы - массиву чисел добавлены новые объекты struct и
cell. Поскольку объект класса описывается структурой, то допустимы
следующие способы использования массива в качестве объекта неко-
торого класса:
• поле объекта - массив;
• объект - массив;
• элементы массива - объекты некоторого класса.
Рассмотрим эту концепцию
на примере полиномов Чебышева,
алгоритм построения которых описывается следующими рекуррент-
ными соотношениями:
T0 (x) = 1
T1 (x) = x
Tn+1 (x) = 2 x Tn (x) -Tn-1 (x), n > 1
Если поле объекта - массив, то объект polynom, описанный
выше, уже имеет в своей структуре поле, которое является массивом,
• если вход является объектом данного класса, то он же являет-
ся выходом;
• преобразует вход к требуемой форме;
• присваивает значения различным полям структуры;
• использует функцию class для того, чтобы приписать объекту
соответствующую метку.
Функции isa и class. Эти функции используются конструкто-
ром, но могут применяться и вне каталога класса.
Функция isa(a, 'class_name') проверяет, принадлежит ли объ-
ект a данному классу.
Пример. Каждое из следующих выражений истинно
isa(pi, 'double') isa('hello', 'char') isa(p, 'polynom')
ans = 1 ans = 1 ans = 1
При использовании вне контекста методов функция class до-
пускает только один аргумент.
Команда class(a) возвращает строку, содержащую имя класса
для объекта a.
Пример. Последовательность операторов возвращает соот-
ветственно
class(pi) class('hello') class(p)
ans = 'double' ans ='char' ans =''polynom'
Объекты и массивы. В системе MATLAB5 к основному
объекту системы - массиву чисел добавлены новые объекты struct и
cell. Поскольку объект класса описывается структурой, то допустимы
следующие способы использования массива в качестве объекта неко-
торого класса:
• поле объекта - массив;
• объект - массив;
• элементы массива - объекты некоторого класса.
Рассмотрим эту концепцию на примере полиномов Чебышева,
алгоритм построения которых описывается следующими рекуррент-
ными соотношениями:
T0 (x) = 1
T1 (x) = x
Tn+1 (x) = 2 x Tn (x) -Tn-1 (x), n > 1
Если поле объекта - массив, то объект polynom, описанный
выше, уже имеет в своей структуре поле, которое является массивом,
215
Страницы
- « первая
- ‹ предыдущая
- …
- 215
- 216
- 217
- 218
- 219
- …
- следующая ›
- последняя »
