- •Введение
- •Как использовать руководства по Borland Pascal
- •Глава 1. Установка и запуск Borland Pascal
- •Использование программы Install
- •Программа Install и Windows
- •Запуск Borland Pascal
- •Защищенный режим и память
- •Запуск Borland Pascal for Windows
- •Запуск bp.Exe в расширенном режиме Windows 386
- •Запуск bp.Exe в стандартном режиме Windows
- •Запуск bp.Exe в окне Windows dos
- •Жидкокристаллические и плазменные экраны
- •Файл readme
- •Файлы filelist.Doc и helpme!.Doc
- •Примеры программ
- •Глава 2. Что нового в Borland Pascal
- •Три интегрированных интерактивных среды разработки программ
- •Новые средства ide
- •Компилятор командной строки, работающий в защищенном режиме
- •Среда разработки программ защищенного режима dos
- •Динамически компонуемые библиотеки dos
- •Добавления к языку Паскаль
- •Улучшения в библиотеке исполняющей системы
- •Новые подпрограммы модуля System
- •Новые модули
- •Новые директивы компилятора
- •Усовершенствования компилятора
- •Улучшения в Turbo Vision
- •Улучшения ObjectWindows
- •Новые средства и утилиты
- •Глава 3. Основы интегрированной среды для dos
- •Запуск ide
- •Компоненты интегрированной среды
- •Окна ide
- •Управление окном
- •Строка состояния
- •Диалоговые окна
- •Глава 4. Программирование в интегрированной интерактивной среде для dos
- •Запуск ide и выход из нее
- •Параметры запуска
- •Установка параметров запуска в интегрированной среде
- •Выход из ide
- •Использование справочной системы Help
- •Перемещение в справочной системе
- •Запрос помощи
- •Копирование примеров исходного кода
- •Загрузка других справочных файлов
- •Выход из справочника Help
- •Запись и редактирование исходного кода
- •Настройка конфигурации редактора
- •Изменение решения: команда Undo
- •Групповая отмена
- •Отмена отмены
- •Работа с блоками текста
- •Выделение блока
- •Вырезание, копирование и вставка блоков
- •Изменение поведения выделенных блоков
- •Поиск и замена
- •Соответствие пар ограничителей
- •Переход к строке с заданным номером
- •Использование локального меню окна редактирования
- •Выделение синтаксиса
- •Выбор файлов для выделения
- •Запрещение выделения синтаксиса
- •Глава 4. Программирование в интегрированной интерактивной среде для dos (часть2) Печать исходного кода
- •Работа с файлами
- •Открытие файлов
- •Открытие файла в позиции курсора
- •Компиляция и выполнение
- •Выбор целевой платформы
- •Компиляция
- •Формирование (Make)
- •Построение (Build)
- •Выполнение
- •Передача программе параметров
- •Параметры компилятора и компоновщика
- •Оптимизация кода
- •Условная компиляция
- •Директивы define и undef
- •Предопределенные идентификаторы
- •Идентификаторы iFxxx, else и endif
- •Директивы ifdef и ifndef
- •Директива ifopt
- •Просмотр исходного кода
- •Просмотр объектов
- •Просмотр модулей
- •Просмотр глобальных идентификаторов
- •Просмотр идентификаторов в исходном коде
- •Просмотр функций ObjectBrowser
- •Выполнение в ide других программ
- •Настройка меню Tools
- •Работа с окном Messages
- •Настройка конфигурации ide
- •Сохранение рабочей операционной среды
- •Использование файла конфигурации
- •Использование файла оперативной области
- •Управление проектом
- •Глава 5. Программирование в интегрированной интерактивной среде для Windows
- •Запуск ide для Windows
- •Использование оперативной полосы
- •Настройка конфигурации оперативной полосы
- •Использование справочной системы Help
- •Перемещение по справочной системе
- •Запрос помощи
- •Копирование примеров кода
- •Выход из справочной системы
- •Запись и редактирование исходного кода
- •Настройка конфигурации редактора
- •Набор команд
- •Использование редактора
- •Выделение синтаксиса
- •Цветовое выделение текста
- •Использование системных цветов Windows
- •Изменение атрибутов текста
- •Печать исходного кода
- •Работа с файлами
- •Открытие файлов
- •Где находятся файлы?
- •Работа с файлами в другом каталоге
- •Компиляция и выполнение
- •Просмотр исходного кода
- •Просмотр объектов
- •Буквенные символы в ObjectBrowser
- •Фильтры
- •Просмотр глобальных идентификаторов
- •Просмотр идентификаторов в исходном коде
- •Выполнение в ide других программ
- •Настройка конфигурации ide
- •Глава 6. Отладка в интегрированной среде
- •Что такое отладка?
- •Какие существуют виды ошибок?
- •Методы отладки
- •Генерация отладочной информации
- •Управление выполнением
- •Что такое шаг?
- •Выполнение программы по шагам
- •Трассировка программы
- •Трассировка или выполнение по шагам?
- •Выполнение больших фрагментов
- •Поиск нужного места
- •Повторное выполнение
- •Отслеживание вывода программы
- •Переключение экранов
- •Окно Output
- •Использование двух мониторов
- •Просмотр значений
- •Что такое выражение?
- •Просмотр выражений
- •Спецификаторы формата в выражениях отладчика
- •Вычисление и модификация
- •Использование точек останова
- •Задание точек останова
- •Отмена точке останова
- •Модификация точек останова
- •Создание условный точек останова
- •Прерывание программы без точек останова
- •Глава 7. Модули Borland Pascal
- •Что такое модуль?
- •Структура модуля
- •Интерфейсная секция
- •Секция реализации
- •Секция инициализации
- •Как используются модули?
- •Ссылки на описания модуля
- •Оператор uses секции реализации
- •Стандартные модули
- •Создание ваших собственных модулей
- •Компиляция модуля
- •Доступность модуля для программы
- •Модули и большие программы
- •Утилита tpumover
- •Глава 7. Модули Borland Pascal
- •Что такое модуль?
- •Структура модуля
- •Интерфейсная секция
- •Секция реализации
- •Секция инициализации
- •Как используются модули?
- •Ссылки на описания модуля
- •Оператор uses секции реализации
- •Стандартные модули
- •Создание ваших собственных модулей
- •Компиляция модуля
- •Доступность модуля для программы
- •Модули и большие программы
- •Утилита tpumover
- •Глава 9. Объектно-ориентированное программирование
- •Объекты
- •Наследование
- •Объекты: наследующие записи
- •Экземпляры объектных типов
- •Поля объектов
- •Хорошая и плохая техника программирования
- •Совмещенные код и данные
- •Определение методов
- •Область действия метода и параметр Self
- •Поля данных объекта и формальные параметры метода
- •Объекты, экспортируемые модулями
- •Секция private
- •Программирование в "действительном залоге"
- •Глава 9. Объектно-ориентированное программирование(часть2) Инкапсуляция
- •Методы: никакого ухудшения
- •Расширяющиеся объекты
- •Наследование статических методов
- •Виртуальные методы и полиморфизм
- •Раннее связывание против позднего связывания
- •Совместимость типов объектов
- •Полиморфические объекты
- •Виртуальные методы
- •Проверка диапазонов при вызове виртуальных методов
- •Расширяемость объекта
- •Статические методы или виртуальные методы?
- •Динамические объекты
- •Размещение и инициализация с помощью процедуры New
- •Удаление динамических объектов
- •Деструкторы
- •Пример размещения динамического объекта
- •Что же дальше?
- •Заключение
- •Глава 10. Взгляд на Windows
- •Что такое приложение Windows?
- •Преимущества Windows
- •Требования
- •Программные средства
- •Архитектура с управлением по событиям
- •Графика, независимая от устройств
- •Многозадачность
- •Управление памятью
- •Ресурсы
- •Динамическая компоновка
- •Буфер вырезанного изображения
- •Динамический обмен данными
- •Множественный документальный интерфейс
- •Типы данных Windows
- •Объектно-ориентированная работа с окнами
- •Лучший интерфейс с Windows
- •Интерфейсные объекты
- •Абстрагирование функций Windows
- •Автоматизация ответа на сообщения
- •Структура программы Windows
- •Структура Windows
- •Взаимодействие с Windows и dos
- •Элементарная программа
- •Действия программы при запуске
- •Назначение основного окна
- •Цикл разработки прикладной программы
- •Изучение ObjectWindows
Директива ifopt
Иногда включить или исключить код желательно в зависимости
от того, какой выбран параметр компилятора (проверка диапазона,
проверка ввода-вывода и т.д.). Вы можете сделать это с помощью
директивы IFOPT, которая имеет две формы:
{$IFOPT x+}
и
{$IFOPT x-}
где x - один из параметров компилятора. При использовании первой
формы содержащийся ниже код будет компилироваться, если параметр
компилятора в данный момент разрешен; при использовании второй
формы код компилируется при запрещении параметра. Например, чтобы
выбрать тип данных для списка переменных на основе того, разреше-
на или нет поддержка сопроцессора 80х87, можно использовать сле-
дующий исходный код:
var
{$IFOPT N+}
Radius,Circ,Area: Double;
{$ELSE}
Radius,Circ,Area: Real;
{$ENDIF}
Примечание: Полное описание всех параметров компилято-
ра вы можете найти в Главе 2 ("Директивы компилятора")
"Справочного руководства программиста".
Просмотр исходного кода
IDE защищенного режима DOS содержит новое программное инс-
трументальное средство просмотра объектов - ObjectBrowser. Оно
позволяет вам исследовать программы и модули в программах и мно-
гое другое. Даже если разрабатываемое вами приложение не исполь-
зует объектно-ориентированное программирование, вы найдете
ObjectBrowser чрезвычайно полезным средством. Вы можете просмат-
ривать иерархию объектов, модулей и всех процедур, функций, пере-
менных, типов, констант и другие используемые в программе иденти-
фикаторы. С помощью ObjectBrowser вы можете делать следующее:
* Просмотреть в своей прикладной программе иерархию объек-
тов. Затем выбрать объект и просмотреть все его процедуры,
функции и другие содержащиеся в программе идентификаторы.
При проверке идентификатора вы можете вывести перечень
всех ссылок на него в процедурах, функциях программы и,
если хотите, перейти на то место в исходном коде, где он
используется.
* Вывести список всех глобальных идентификаторов, используе-
мые в вашей программе, и увидеть их описания. Если вы вы-
берите одну переменную, то можете вывести список всех ссы-
лок не нее в своей программе и, если хотите, перейти на то
место в исходном коде, где она используется.
* Вывести список всех используемых в программе модулей, за-
тем выбрать один из них и просмотреть список всех иденти-
фикаторов его интерфейсной части.
* Выбрать идентификатор в исходном коде, затем просмотреть
детальную информацию по нему, нажав клавишу Ctrl и однов-
ременно щелкнув правой кнопкой "мыши".
* Открыть множество окон просмотра, сравнить идентификаторы,
выводимые в различных окнах, а затем вернуться в предыду-
щее открытое в средстве просмотра окно.
Перед использованием ObjectBrowser убедитесь, что в диалого-
вом окне Options|Compiler установлены следующие параметры:
* Debug Information (Информация для отладки).
* Locals Symbols (Локальные идентификаторы).
* Symbol Information (Информация об идентификаторах).
Убедитесь также, что в диалоговом окне Debugging/Browsing
(Options|Debugger) установлен параметр Integrated Debugging/
Browsing (Отладка с использование встроенного отладчика/Прос-
мотр).
Скомпилируйте программу, которую вы хотите просматривать.
Для активизации ObjectBrowser выберите в меню Search (Поиск)
команду Objects (Объекты), Units (Модули) или Globals (Глобальные
идентификаторы). Вы можете также поместить курсор на идентифика-
тор в исходном коде и выбрать для вывода ObjectBrowser команду
Search|Symbol (Поиск|Идентификатор).
Вы можете также сделать так, чтобы компилятор "запоминал"
информацию об идентификаторах между компиляциями. Если этот пара-
метр включен, и вы измените программу, но следующая компиляция
завершиться неудачно, то вам все равно будет доступна информация
об идентификаторах, сохраненная с последней компиляции. Благодаря
этому вы сможете просмотреть свою программу, что поможет вам оп-
ределить источник проблемы. Чтобы компилятор сохранял информацию
об идентификаторах между компиляциями, нужно сделать следующее:
1. Выбрать команду Options|Enviroment|Startup.
2. Установить параметр Preserve Symbols (Сохранение иденти-
фикаторов); по умолчанию он установлен.
3. Выбрать командную кнопку OK.
4. Для выхода из IDE выбрать команду File|Exit.
5. Снова запустить IDE.
Примечание: Поскольку Preserve Symbols - это параметр
запуска, изменение его установки не будет иметь действие,
пока вы не выйдите из IDE и не запустите ее снова.
Если у вас есть "мышь", то исходный код удобнее просматри-
вать, если задать активизацию ObjectBrowser правой кнопкой "мы-
ши". Затем, удерживая нажатой клавишу Ctrl, вы можете использо-
вать правую кнопку "мыши" для указания и проверки объекта, проце-
дуры, функции, переменной или другого идентификатора в вашем ис-
ходном коде и его анализа (вывода детальной информации).
Примечание: Для быстрого просмотра идентификатора, на
котором в исходном коде позиционирован курсор, вы можете
также выбрать в локальном меню окна редактирования команду
Browse Symbol at Cursor (Просмотр идентификатора в позиции
курсора).
Чтобы задать просмотр с помощью "мыши", выполните следующие
шаги:
1. Выберите команду Options|Enviroment|Mouse.
2. Выберите параметр Browse as the Ctrl + Right Mouse Button
(Просмотр по клавише Ctrl + правая кнопка "мыши").
3. Выберите командную кнопку OK.