Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Обработка ошибок времени выполнения




Инструкция Print

Вместо инструкции Print в окне отладки можно использовать вопросительный знак (?), как это было в старых версиях Basic (см. рис. 14.3). В окне отладки сохраняются последние 200 строк, которые можно редактировать или выполнять повторно.

Окно отладки можно использовать и по-другому. В этом случае, используя объект Debug и его метод Print, сообщения окну посылают из программного кода. Например, на рис. 14.3 можно увидеть результат работы находящейся в программном коде инструкции

Debug.Print "Число 2 = "; lblЧисло2.Caption

Возможность такого вывода в окно отладки имеет несколько преимуществ. Во-первых, таким образом выводить контрольные значения можно не только в режиме отладки, но и в режиме выполнения, что позволяет выводить выражения, не останавливая выполнение программы. Во-вторых, выведенные значения, отображаемые в окне отладки, можно просмотреть даже после остановки программы. Это важно в случаях, когда поведение программы при пошаговом выполнении отличается от поведения при нормальном выполнении, например при приеме данных в режиме реального времени.

В идеальном случае программа не должна бороться с ошибками в период выполнения. Однако разработчик должен предусмотреть вероятность появления сбойных файлов, переполнения памяти или ввода пользователем некорректных данных. Все это может послу­жить причиной возникновения ошибок при выполнении программы.

При обнаружении такой ошибки VB выводит соответствующее сообщение и приостанавливает выполнение программы.

Если приложение было запущено из среды разработки, то сущест­вует возможность переключиться в режим отладки с помощью кнопки Debug либо в режим проектирования с помощью кнопки End. Среда разработки относительно "мягко" реагирует на ошибки периода выполнения.

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

Перехват ошибок периода выполнения следует предусмотреть на этапе разработки приложения. Для этого создаются специальные процедуры-обработчики ошибок. Все ошибки периода выполнения можно разделить на две группы: ожидаемые, обработка которых предусмотрена разработчиком, и неожиданные, появление которых не всегда могут предвидеть даже опытные программисты.

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

• перехват ошибки;

• проверка и устранение ошибки;

• продолжение выполнения программы.




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


Дата добавления: 2014-12-07; Просмотров: 363; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.