- •Введение
- •Как использовать руководства по 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
Просмотр выражений
Если вы хотите отслеживать значение переменной или выражения
при выполнении программы по шагам, то можете открыть окно прос-
мотра Watches. Это окно IDE показывает переменные и их значения в
каждый конкретный момент.
Чтобы открыть окно Watches, выберите команду Window|Watch.
IDE открывает активное окно Watches без активных записей. Если вы
выберите переменную для просмотра, IDE автоматически открывает
окно Watches (если вы этого еще не сделали).
Добавление просматриваемого выражения
Чтобы добавить в окно Watches переменную, выберите команду
Debug|Watch|Add Watch или нажмите клавиши Ctrl+F7. Если окно
Watches является активным окном, вы можете добавить выражение
просмотра, нажав клавишу Ins. Отладчик открывает диалоговое окно,
запрашивающее у вас тип просматриваемого выражения. По умолчанию
выражением считается слово в позиции курсора в текущем окне ре-
дактирования. Просматриваемые выражения, которые вы отслеживали
ранее, сохраняются в списке протокола.
Отслеживание текущего просматриваемого выражения
Последнее добавленное или модифицированное просматриваемое
выражение является текущим просматриваемым выражением, которое
указывается выводимым слева от него символом жирной левой точки.
Если окно Watches активно, вы можете также удалить текущее выра-
жение, нажав клавишу Del или Ctrl+Y. Чтобы удалить все просматри-
ваемые выражения, выберите команду Debug|Watch|Remove All
Watches.
Редактирование просматриваемых выражений
Чтобы отредактировать просматриваемое выражение, нужно дваж-
ды щелкнуть на этом выражении "мышью" или сделать это выражение
текущим, затем нажать клавишу Enter или выбрать команду Debug|
Watch|Edit Watch. Отладчик открывает диалоговое окно, аналогичное
тому, которое используется для добавления просматриваемого выра-
жения, которое позволяет вам отредактировать текущее выражение.
При выборе командной кнопки OK или нажатии клавиши Enter отредак-
тированное выражение заменяет оригинал.
Форматирование просматриваемых выражений
Окно Watches позволяет вам несколькими способами форматиро-
вать просматриваемые выражения, добавляя запятую и один или более
спецификаторов формата. Например, хотя целочисленные значения вы-
водятся обычно в десятичном виде, указав после него ,H, вы можете
задать вывод выражения в шестнадцатиричном формате. Допустимые
спецификаторы формата и их действие перечисляются в Таблице 6.2.
Спецификаторы формата в выражениях отладчика
Таблица 6.2
+--------------+---------------------+--------------------------+
| Символ | Тип, на который | Функция |
| | он влияет | |
+--------------+---------------------+--------------------------|
| $, H или X | целочисленные типы | Шестнадцатиричный. Выво-|
| | | дит целочисленные значе-|
| | | ния в префиксом $, вклю-|
| | | чая те, которые содержат-|
| | | ся в структуре данных. |
+--------------+---------------------+--------------------------|
| C | Char, строковые | Символьный. Выводит спе-|
| | типы | циальные символы для ко-|
| | | дов ASCII 0..31. По умол-|
| | | чанию такие символы выво-|
| | | дятся в виде значений|
| | | #xx. |
+--------------+---------------------+--------------------------|
| D | целочисленные | Десятичный. Выводят цело-|
| | типы | численные значения в де-|
| | | сятичном виде (включая|
| | | те, которые содержатся в|
| | | структурах данных). |
+--------------+---------------------+--------------------------|
| Fn | с плавающей точкой | С плавающей точкой. Выво-|
| | | дит n значащих цифр, где|
| | | n лежит в диапазоне 2..18|
| | | (по умолчанию - 11). |
+--------------+---------------------+--------------------------|
| nM | все | Дамп памяти. Выводит n|
| | | байт памяти, начиная с|
| | | адреса, указываемого вы-|
| | | ражением. Если n не зада-|
| | | но, то по умолчанию оно|
| | | равно значению размера в|
| | | байтах типа переменной. |
+--------------+---------------------+--------------------------|
| P | указатели | Указатель. Выводит указа-|
| | | тели по адресу сегм:смещ|
| | | (на не Ptr(сегм:смещ),|
| | | как это делается по умол-|
| | | чанию. |
+--------------+---------------------+--------------------------|
| R | записи, объекты | Запись. Выводит имена по-|
| | | лей, например, (X:1;|
| | | Y:10; Z:5) вместо (1, 10,|
| | | 5). |
+--------------+---------------------+--------------------------|
| S | Char, строки | Строки. Выводит символы|
| | | ASCII 0..31 в виде #xx.|
| | | Использует только для мо-|
| | | дификации дампов памяти|
| | | (см. выше nM). |
+--------------+---------------------+--------------------------+