Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Меню - Project | Build Project.






Она компилирует все файлы проекта независимо от времени их предыдущей компиляции.

 

В результате в листинге компиляции могут быть получены Hint — замечания, Warning — предупреждения и Error — сообщения об ошибках. Естественно, что ошибки должны быть исправлены. Но не надо пренебрегать и замечаниями компилятора.

Если откомпилированное приложение выполняется, это не означает, что оно правильно работает. В приложении могут возникнуть ошибки времени выполнения:

1) постоянные логические ошибки, проявляющиеся всегда при выполнении некоторых частей вашей программы.

2) ошибки, проявляющиеся только при каких-то сочетанияхданных: ошибки деления на нуль, переполнения, открытия несуществующего файла и т.п.

3) случайные перемежающиеся (несистематические) ошибки, когда одна и та же задача иногда выполняется нормально, а иногда — нет.

Во всех подобных случаях причины ошибок выявляются в процессе отладки.

Просмотр исходных текстов признан наиболее эффективным средством обнаружения ошибок

За наиболее часто встречающимися ошибками можно заставить следить саму программу. Для этого в настройках проекта — соответствующее диалоговое окно вызывается командой Project – Options. Далее на панели Code generation (Генерация машинного кода) надо сбросить флажок Optimization (Оптимизация). На панели Runtime errors (Ошибки времени выполнения) должны быть установлены флажки (см. рис.1)

· Range checking (Контроль выхода индекса за границы массива),

· I/O Checking (Контроль ошибок ввода/вывода) и

· Overflow checking (Контроль переполнения при целочисленных операциях).

На панели Debugging (Отладка) следует установить флажки

· Debug information (Добавление отладочной информации),

· Local symbols (Просмотр значений локальных переменных),

· Reference info (Просмотр структуры кода),

· Assertions (Включение процедуры Assert в машинный код) и

· Use Debug DCUs (Использование отладочных версий стандартных модулей библиотеки компонентов VCL).

 

Рис. 1 Опции проекта.

 

Сообщения отладчика можно отключить. Для этого надо выполнить команду Tools | Debugger Options и на странице Language Exceptions окна настройки отладчика выключить опцию Stop On Delphi Exceptions.


 

Рис. 2. Отключение сообщений отладчика


 

При отладке во время выполнения приложения после появления системного сообщения об ошибке необходимо щелкнуть на кнопке ОК и перейти в окно Редактора Кода.Дальнейшие действия сводятся к одной из следующих альтернатив.

1. Можно нажать клавиши Ctrl - F2 и тем самым прервать выполнение и отладку приложения, если понятно, в чем заключается ошибка, и как ее исправить. Если же не понятно в чём дело, то прежде, чем прерывать сеанс работы с приложением, надо получить дополнительную информацию о состоянии переменных, чтобыобдумывать ситуацию, имея дополнительные данные.

2. Можно выполнить команду Run | Run (или нажать соответствующую быструю кнопку, или клавишу F9), чтобы попытаться, несмотря на ошибку, продолжить вычисления. При этом управление вернется в приложение, ситуация с ошибкой повторится.

3. Можнопройти часть программы по шагам. Но прежде, чем это делать, надо получить какую-то информацию, иначе пошаговое выполнение ничего не даст.

 

Получить информацию о происходящих в приложениях процессах, приведших к ошибке, в том числе и оценить значения переменных, можно несколькими способами.

1) В ИСР Delphi имеется Мастер оценки выражений ToolTip Expression Evaluation. Чтобы он работал, надо, чтобы программа продолжила выполнение в пошаговом режиме после генерации исключения.

2) Если никакая строка в Редакторе Кода в данный момент не выделена,

· нажать клавишу F7,

· подвести курсор мыши к имени любой переменной или к имени свойства (например, к Editl.Text) и

· увидеть ярлычок с текущим значением переменной или свойства.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал