1.2.2.11 Ячейки
Ячейки, как и структуры, состоят из многих компонент разного типа,
которые упорядочены в виде многомерного массива. Доступ к компонентам
осуществляется с помощью индексов. Отличительным атрибутом ячеек на
уровне языка является задание их содержимого в фигурных скобках {}.
Используя фигурные скобки, ячейки можно создавать двумя способами:
а) с помощью индекса ячеек: А(1,2) = {[1 2; 3 4]};
б
) с помощью индексации содержимого: А{1,2}=[1 2; 3 4].
Доступ к компонентам ячейки осуществляется с помощью индексов,
которые можно записывать как в круглых ( ), так и в фигурных скобках, так
что А(1,2) и А {1,2} будут обозначать одну и ту же компоненту ячейки А.
Специальная функция cell позволяет создавать ячейки из пустых матриц:
cell(N) – из NxN матриц, cell(M,N) - из Mх
N матриц и т.д. Для отображения
компонент ячейки используется функция celldisp, для визуализации – набор
функций cellplot с различными аргументами.
Проверка типа ячеек производится функциями iscellstr и iscell.
Для создания из массива S, содержащего символьные строки, ячейки с
теми же строками можно использовать функции cellstr. Для подобного
преобразования массива чисел имеется функция num2cell. Преобразование
структур и ячеек выполняются
соответственно функциями struct2cell и
cell2struct, а матриц и ячеек - функциями mat2cell и cell2mat.
1.2.2.12 Классы
Классы и объекты позволяют добавлять новые типы данных и новые
операции. Класс описывает тип переменной и определяет, какие операции и
функции могут быть применены к этому типу переменной. Объект – это
структура или образец некоторого класса.
Добавление классов осуществляется в
рамках операционной среды
системы MATLAB, которая обеспечивает возможность хранения созданных
объектов и организации каталога m-файлов, определяющих допустимые
методы обработки для данного класса объектов. Каталог класса имеет имя
@<имя класса> и включает m-функции, определяющие способы, с помощью
которых операции системы MATLAB, включая арифметические, обработки
индексов и конкатенации, обрабатывают объекты данного класса.
Переопределение встроенных
операций для нового класса объектов в рамках
объектно-ориентированного подхода называется переопределением методов.
Каталог класса должен обязательно содержать m-файл, называемый
конструктором класса. Название конструктора должно совпадать с
названиями класса и каталога без префикса @. Объекты классов создаются
динамически посредством вызова конструктора класса. Конструктор создает