Содержание
Предисловие .............................................................................. 10
Глава 1. Основы программирования
на Borland C++ Builder
1.1. Среда разработки ................................................................ 13
1.1.1. Панель инструментов.................................................... 14
1.1.2. Палитра компонентов ................................................... 14
1.1.3. Редактор форм ............................................................. 14
1.1.4. Редактор кода ............................................................... 14
1.1.5. Инспектор объектов ...................................................... 15
1.1.6. Менеджер проекта ........................................................ 16
1.1.7. Контекстное меню ........................................................ 16
1.1.8. Контекстная помощь ..................................................... 16
1.2. Компоненты C++ Builder ....................................................... 17
1.2.1. Свойства компонентов.................................................. 18
1.2.2. События компонентов................................................... 18
1.2.3. Методы компонентов .................................................... 19
1.3. Основы С++ как языка создания программ в C++ Builder ..... 19
1.3.1. Комментарии ................................................................ 19
1.3.2. Типы и описания ........................................................... 20
1.3.3. Основные типы ............................................................. 21
1.3.4. Константы ..................................................................... 22
1.3.5. Производные типы........................................................ 23
1.3.6. Базовые операторы ...................................................... 27
1.3.7. Выражения и операторы ............................................... 28
Описания ...................................................................... 29
1.3.8. Функции ........................................................................ 32
1.3.9. Классы и объектно)ориентированное
программирование ................................................................ 33
1.3.10. Структура программы на С++...................................... 51
1.3.11. Событийное программирование ................................. 54
1.4. Использование основных классов библиотеки VCL .............. 58
1.4.1. Классы описания данных .............................................. 58
1.4.2. Компоненты интерфейса .............................................. 69
1.4.3. Системные компоненты ................................................ 83
TForm............................................................................ 86
1.4.4. Обработка исключений ................................................. 98
1.5. Пример построения графиков функций в C++ Builder .......... 99
Глава 2. Основы работы в системе MATLAB®
2.1. Система компьютерной математики MATLAB..................... 109
2.1.1 Основные компоненты системы MATLAB ..................... 110
2.1.2. Инструментальные средства рабочего стола MATLAB ... 111
2.1.3. Константы и системные переменные MATLAB ............ 117
2.1.4. Типы данных MATLAB .................................................. 117
2.2. Основы работы с MATLAB .................................................. 120
2.2.1. Запуск MATLAB и начало работы ................................. 120
2.2.2. Задание массивов ...................................................... 122
2.2.3. Операции над массивами ........................................... 125
2.2.4. Решение систем линейных уравнений ........................ 128
2.2.5. М)файлы ..................................................................... 131
2.2.6. Чтение и запись текстовых файлов ............................. 133
2.2.7. Операции с рабочей областью и текстом сессии ........ 136
2.3. Массивы символов ............................................................ 137
2.3.1. Задание массива символов ........................................ 137
2.3.2. Общие функции .......................................................... 138
2.3.3. Проверка строк ........................................................... 139
2.3.4. Операции над строками .............................................. 139
2.3.5. Преобразование чисел в символы и обратно .............. 141
2.3.6. Функции преобразования систем счисления .............. 142
2.3.7. Вычисление строковых выражений ............................. 143
2.4. Массивы ячеек ................................................................... 143
2.4.1. Создание массивов ячеек ........................................... 144
2.4.2. Доступ к данным в ячейках.......................................... 146
2.4.3. Вложенные массивы ячеек.......................................... 147
2.4.4. Массивы ячеек, содержащих структуры...................... 149
2.4.5. Многомерные массивы ячеек ..................................... 149
2.5. Массивы структур .............................................................. 150
2.5.1. Построение структур .................................................. 150
2.5.2. Доступ к полям и данным структуры ........................... 151
2.4.3. Многомерные массивы структур................................. 154
2.6. Программирование в среде MATLAB.................................. 154
2.6.1. М)функции .................................................................. 155
2.6.2. Операторы системы MATLAB ..................................... 160
2.6.3. Управление последовательностью
исполнения операторов ....................................................... 163
2.6.4. Вычисление символьных выражений .......................... 167
2.6.5. Ошибки и предупреждения ......................................... 168
2.6.6. Повышение эффективности обработки М)файлов ...... 169
Глава 3. Математическая библиотека MATLAB®
для языка C
3.1. Введение ........................................................................... 171
3.1.1. Установка Математической библиотеки MATLAB ........ 172
3.1.2. Каталоги Математической библиотеки ....................... 174
3.1.3. Документация Математической
библиотеки MATLAB C .......................................................... 174
3.1.4. Сходство и различие MATLAB и C................................ 175
3.1.5. Пример написания простой программы ..................... 176
3.1.6. Компиляция и компоновка приложения ...................... 178
3.2. Работа с массивами mxArray .............................................. 182
3.2.1. Поддерживаемые типы массивов MATLAB .................. 182
3.2.2. Числовые массивы...................................................... 183
3.2.3. Разреженные матрицы................................................ 188
3.2.4. Массивы символов ..................................................... 191
3.2.5. Массивы ячеек ............................................................ 193
3.2.6. Структуры MATLAB ...................................................... 196
3.2.7. Выполнение обычных задач программирования
с массивами ......................................................................... 198
3.3. Управление памятью массива............................................ 202
3.3.1. Автоматизированное управление памятью
против явного ...................................................................... 202
3.3.2. Использование автоматизированного
управления памятью ............................................................ 205
3.4. Индексация в массивах...................................................... 210
3.4.1. Введение .................................................................... 211
3.4.2. Функции индексации .................................................. 212
3.4.3. Индексация числовых массивов ................................. 214
3.4.4. Индексация массива ячеек ......................................... 220
3.4.5. Индексация массива структур .................................... 223
3.5. Вызов процедур библиотеки .............................................. 225
3.5.1. Как вызывать функции MATLAB .................................. 226
3.5.2. Передача функций в качестве аргументов .................. 231
3.5.3. Замена списков параметров массивом ячеек ............. 238
3.6. Импорт и экспорт данных................................................... 239
3.7. Процедуры Математической библиотеки С ....................... 241
Глава 4. Математическая библиотека MATLAB®
для языка C++
4.1. Введение ........................................................................... 244
4.1.1. Установка Математической библиотеки ..................... 245
4.1.2. Каталоги Математической библиотеки ....................... 246
4.1.3. Документация Математической
библиотеки MATLAB C++ ...................................................... 248
4.1.4. Сходство и различие MATLAB и C++ ............................ 249
4.1.5. Знакомство с Математической
библиотекой MATLAB C++ .................................................... 250
4.1.6. Создание автономных С++)приложений ..................... 252
4.1.7. Компиляция и компоновка приложения ...................... 255
4.2. Работа с массивами mwArray ............................................. 257
4.2.1. Числовые массивы...................................................... 258
4.2.2. Разреженные матрицы................................................ 263
4.2.3. Массивы символов ..................................................... 265
4.2.4. Массивы ячеек ............................................................ 267
4.2.5. Структуры ................................................................... 270
4.2.6. Выполнение обычных задач программирования
с массивами ......................................................................... 271
4.3. Индексация в массивах...................................................... 278
4.3.1. Индексация числовых массивов ................................. 279
4.3.2. Индексация в массивах ячеек ..................................... 283
4.3.3. Индексация в массивах структур MATLAB ................... 286
4.3.4. Некоторые методы индексации .................................. 288
4.4. Вызов функций библиотеки ............................................... 289
4.4.1. Как вызывать функции библиотеки C++ ...................... 289
4.4.2. Представление входных аргументов
как массива ячеек ................................................................ 293
4.4.3. Передача функций в качестве аргументов .................. 294
4.4.4. Использование математических операторов .............. 296
4.4.5. Конфликты имен с функциями стандартной
библиотеки C........................................................................ 297
4.5. Ввод и вывод массивов...................................................... 299
4.5.1. Использование потока ввода)вывода массива ........... 299
4.5.2. Использование функций ввода/вывода файлов .......... 301
4.5.3. Импорт и экспорт данных MAT)файла ......................... 305
4.6. Интерфейс класса mwArray ................................................ 307
4.6.1. Конструкторы.............................................................. 308
4.6.2. Индексация ................................................................. 309
4.6.3. Операторы .................................................................. 311
4.6.4. Размер массива .......................................................... 312
4.6.5. Извлечение данных из mwArray ................................... 312
Глава 5. Компилятор MATLAB® версии 3.0
5.1. Введение в Компилятор MATLAB........................................ 315
5.1.1. Инсталляция и конфигурация ..................................... 316
5.1.2. Использование Компилятора mcc............................... 318
5.1.3. Конечные продукты Компилятора MATLAB .................. 320
5.1.4. Ограничения компиляторов ........................................ 323
5.1.5. Пример создания МЕХ)файла ..................................... 324
5.2. Опции mbuild ..................................................................... 325
5.3. Опции Компилятора mcc.................................................... 328
5.3.1. Обычное использование Компилятора ....................... 328
5.3.2. Опции mcc .................................................................. 329
5.3.3. Использование опций и макроопций mcc ................... 332
5.3.4. Опции создания кода .................................................. 335
5.3.5. Опции настройки Компилятора и среды разработки .... 337
5.3.6. Опции mbuild/mex ....................................................... 339
5.4. Создание автономных приложений и библиотек ................ 340
5.4.1. Создание автономных приложений............................. 341
5.4.2. Создание общедоступных библиотек ......................... 346
5.4.3. Распространение автономных приложений ................ 352
5.5. Создаваемые Компилятором коды .................................... 353
5.5.1. Типы создаваемых файлов ......................................... 353
5.5.2. Внутренние функции интерфейса ............................... 356
5.5.3. Поддерживаемые выполнимые типы .......................... 360
5.5.4. Управление видом кода программы ........................... 362
5.5.5. Использование псевдокомментариев ......................... 364
5.6. Выполнение оптимизации ................................................. 367
Глава 6. Компилятор MATLAB® версии 4
6.1. Введение ........................................................................... 372
6.1.1. Системные требования и ограничения ....................... 372
6.1.2. Различия между MATLAB Компилятором 4
и предыдущими версиями.................................................... 375
6.1.3. Использования Компилятора MATLAB ........................ 378
6.2. Процесс трансляции .......................................................... 379
6.2.1. Обзор технологии Компилятора MATLAB .................... 379
6.2.2. Файлы, создаваемые mcc ........................................... 381
6.2.3. Функция mbuild ........................................................... 382
6.3. Работа с программой mcc.................................................. 384
6.3.1. Опции mcc .................................................................. 385
6.3.2. Использование файлов групп ..................................... 392
6.3.3. Использование файлов обертки ................................. 394
6.3.4. Использование псевдокомментариев ......................... 394
6.3.5. Скрипт)файлы ............................................................ 395
6.4. Автономные приложения ................................................... 396
6.4.1. Создание кода только из m)файлов ............................ 396
6.4.2. Объединение М)файлов и кода C или C++ .................. 398
6.4.3. Управление путями при компиляции........................... 400
6.4.4. Пропущенные функции ............................................... 402
6.4.5. Автономное С)приложение для пользователя............. 402
6.5. Библиотеки ........................................................................ 404
6.5.1. Библиотека совместного использования C ................. 405
6.5.2. C++)библиотека совместного использования............. 409
6.5.3. Функции, созданные из m)файлов .............................. 412
6.5.4. Использование varargin
и varargout в интерфейсе m)функции ................................... 413
Глава 7. Создание приложений
на Borland С++ Builder с использованием
Математической библиотеки С++ MATLAB®
7.1. Чтение, обработка и запись данных ................................... 415
7.2. Построение графиков данных mwArray .............................. 421
7.3. Пакетное вейвлет)разложение сигнала ............................. 425
7.3.1. Описание пакетного вейвлет)разложения .................. 425
7.3.2. Описание функций программы ................................... 426
7.3.3. Описание работы программы ..................................... 428
Приложение 1. Функции Математической
библиотеки C++ MATLAB®
П.1.1. Операторы...................................................................... 437
П.1.2. Функции Математической библиотеки MATLAB C++ ....... 439
1.2.1. Функции ввода/вывода файлов .................................. 439
1.2.2. Операторы и специальные функции............................ 440
1.2.3. Элементарные матрицы и управление матрицами ..... 442
1.2.4. Элементарные математическиефункции ................... 443
1.2.5. Специализированные математические функции ........ 444
1.2.6. Численная линейная алгебра ...................................... 445
1.2.7. Анализ данных и преобразования Фурье .................... 446
1.2.8. Полиномы и интерполяционные функции ................... 447
1.2.9. Функции от функций и решение обыкновенных
дифференциальных уравнений ............................................ 448
1.2.10. Типы данных ............................................................. 449
1.2.11. Функции многомерных массивов .............................. 449
1.2.12. Функции строк символов .......................................... 449
1.2.13. Функции массива ячеек ............................................ 450
1.2.14. Функции структур...................................................... 451
1.2.15. Функции разреженных матриц .................................. 451
1.2.16. Время и даты............................................................ 452
П.1.3. Сервисные функции ....................................................... 452
П.1.4. Функции доступа к массивам.......................................... 455
Приложение 2. Библиотека классов C++
Компилятора 4 MATLAB®
П.2.1. Основные типы данных ................................................... 458
П.2.2. Класс mwString ............................................................... 458
2.2.1. Конструкторы.............................................................. 459
2.2.2. Методы ....................................................................... 460
2.2.3. Операторы .................................................................. 460
П.2.3. Класс mwException ......................................................... 462
2.3.1. Конструкторы.............................................................. 462
2.3.2. Методы ....................................................................... 464
2.3.3. Операторы .................................................................. 464
П.2.4. Класс mwArray ................................................................ 465
2.4.1. Конструкторы.............................................................. 466
2.4.2. Методы ....................................................................... 470
2.4.3. Операторы .................................................................. 481
2.4.4. Статические методы ................................................... 482
Содержание компакт#диска.................................................. 485
Литература................................................................................ 489