Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Отладочная информацияСтр 1 из 8Следующая ⇒
Содержание
1. Цель работы.. 4 2. Общие сведения. 4 2.1. Отладочная информация. 4 2.2. Работа с интегрированным отладчиком.. 6 2.3. Использование точек останова. 8 2.3.1. Точки останова на строке. 9 2.4. Окна отладчика. 12 2.4.1. Просмотр значений идентификаторов. 13 2.4.1.1. Всплывающие подсказки в отладчике. 13 2.4.1.2. Окно Вычислить/Изменить. 14 2.4.1.3. Окно просмотра значений. 15 2.4.1.4. Окно Локальных переменных. 17 2.4.1.5. Стек вызовов. 18 2.4.1.6. Инспектор отладки. 19 2.4.1.7. Журнал событий. 21 2.5. Другие способы отладки. 23 2.5.1. Использование процедуры Assert 24 3. Отладка приложения. 25
Общие сведения Процесс отладки является неотъемлемой частью создания приложения. Среда программирования Delphi включает в себя интегрированный отладчик, предоставляющий разнообразные возможности отладки на этапе выполнения.
Отладочная информация Для отладки программы в Delphi необходимо добавить отладочную информацию в скомпилированный код, что Delphi и делает по умолчанию. Можно включать или выключать отладочную информацию в диалоговом окне Опции проекта (Project Options). В разделе Отладка (Debugging) вкладки Компилятор (Compiler) расположено пять флажков (рис. 2.1): § Информация для отладки (Debug information) - добавляет в каждый модуль карту соответствия исполняемых адресов и номеров строк исходного кода. Это увеличивает размер DCU-файла, но не отражается на размере и скорости работы исполняемой программы. (Компоновщик не включает отладочную информацию при сборке ЕХЕ-файла, если только вы явно не запросите отладочную информацию в формате TD32, отличном от формата в файлах DCU.); § Локальные символы (Local symbols) добавляет отладочную информацию обо всех локальных идентификаторах, именах и типах, определенных в секции реализации модуля; § Информация о связях (Reference info) - добавляет информацию с перекрестными ссылками об идентификаторах, используемых в модуле, чтобы Project Inspector (или Object Browser) мог отображать их. Если не установлен дочерний флажок Только определения (Definitions Only), будут отслеживаться также все места использования идентификаторов, что позволит пользоваться перекрестными ссылками в Project Explorer; § Претензии (Assertions) - добавляет в вашу программу операторы контроля (assertion), то есть код, который немедленно прекратит выполнение программы при невыполнении заданного условия (см. раздел 2.5.1). В отличие от исключительных ситуаций и другого кода обнаружения ошибок, операторы контроля можно удалить автоматически, просто сняв данный флажок. После изменения этой установки необходимо заново скомпоновать ваш проект, чтобы добавить или удалить код контроля из приложения; § Модули для отладки (Use Debug DCUs) — используется для компоновки с отладочной версией модулей (файлов DCU) библиотеки VCL. На самом деле эта команда добавляет путь к отладочным версиям DCU-файлов (указанный на странице Основные (General) окна Опции отладчика (Debugger Options) к пути поиска (указанному на странице Каталоги /Условия (Directories / Conditionals) в диалоговом окне Опции проекта).
Рис. 2.1. Вкладка Компилятор диалогового окна Опции проекта. Интегрированный отладчик использует эту информацию в процессе отладки программы. Отладочная информация не присоединяется к исполняемому файлу, если вы не установите флажок Информация дляTD32 (Include TD32 Debug Info) на странице Компоновщик(Linker) в диалоговом окне Опции проекта. Отладочную информацию следует добавлять в исполняемый файл, только если вы планируете использовать внешний отладчик, такой как Turbo Debugger for Windows фирмы Borland (TD32). He добавляйте ее, если вы работаете только с интегрированным отладчиком, и не забудьте убрать ее из окончательной, поставляемой пользователям версии вашей программы. Для доступа ко всем используемым переменным необходимо отключить оптимизацию исполняемого кода (флажок Оптимизация).
|