Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Стандартные классы исключительных ситуаций

Поиск

В библиотеках системы Delphi 7 имеется немало классов, ответственных за обра-

ботку различных исключительных ситуаций. В отличие от остальных типов Паска-

ля, названия которых принято записывать начиная с буквы Т, имена этих классов

начинаются с буквы Е (Exception). Основные классы исключительных ситуаций

приведены в табл. 3.3.

 

 

Таблица 3.3. Основные классы исключительных ситуаций

Имя класса Когда возникает

EAbort Данный класс предназначен для формирования и обработки ≪невидимых≫

для пользователя ошибок и используется разработчиками для управления

ходом выполнения программы. Диалоговое окно с сообщением об ошибке

не показывается

EAbstractError Попытка выполнения абстрактного метода

EAccessViolation Обращение к недоступной области памяти, например при выходе индекса

за границы мА

 


Е Assertion Failed

EControlC

ECon vert Error

EDivByZero

EExternal

£ Exte rnalException

EHeapException

EFHeStream Error

EInOutError

EIntError

EIntOverfLow

ElntfCastError

ElnvalidCast

EInvaLidOp

Elnvalid Pointer

EMathError

EOutOf Memory

E Overflow

EPackageError

EPrivilege

EPropReadOnly

ERangeError

EStackQverflow

 

E Underflow

 

EVariantError

EWinBZError

EZero Divide

Значение выражения в процедуре Assert равно False

Нажата комбинация клавиш CTRL+C в консольном приложении

Попытка неверного преобразования типов, например при вызове StrToInt('aaa')

Деление на ноль

Неверное функционирование системы Windows

Невозможность распознать исключительную ситуацию средствами Delphi 7

Неверное динамическое распределение памяти или некорректная работа с указателями

Ошибка ввода/вывода при использовании файла, название которогоуказано в параметре FHeName данного класса

Ошибка файлового ввода/вывода

Базовый класс, на основе которого созданы классы исключительных ситуаций при работе с целыми числами

Слишком большой результат при операции с целыми числами

Неверное приведение типа объекта с помощью операции as во время обращения к интерфейсу

Неверное приведение типа с помощью операции as

Неверная операция над числами с плавающей запятой

Неверная операция при работе с указателями

Базовый класс, на основе которого созданы классы исключительных ситуаций при работе с числами с плавающей зап

Нехватка памяти

Переполнение при выполнении операции над числами с плавающей запятой

Некорректная работа с пакетами {см. далее). Возникает только на этапе проектирования в среде Delphi 7

Попытка выполнить неразрешенную привилегированную инструкцию процессора

Попытка занесения значения в свойство объекта, доступное ≪только для чтения≫

Значение выражения целого типа выходит за допустимый для этого типа диапазон

Нехватка памяти в стеке. Возникает, когда используются слишком объемные локальные переменные (они создаются и хранятся в стеке) или когда слишком длинна последовательность вызовов вложенных подпрограмм

Результатом выражения над числами с плавающей запятой является число, которое слишком мало для его представления в программе

Некорректное использование переменных типа Variant например при попытке неверного приведения типов

Ошибка 32-разрядной"версии Window?

Деление на ноль__


 

 

ЗАМЕЧАНИЕ Иногда исключительные ситуации используют, чтобы изменить поря-

док выполнения операторов программы. Если, например, обнару-

жена ошибка при работе какого-либо метода, желательно не

просто завершить его работу, а передать управление в часть про-

граммы, ответственную за исключительные ситуации. Для этого

обычно применяют процедуру Abort [без параметров), генериру-

ющую исключительную ситуацию класса EAbort.



Поделиться:


Последнее изменение этой страницы: 2017-02-21; просмотров: 359; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.237.54 (0.005 с.)