Составители:
Рубрика:
9
Обработка исключительных ситуаций
Серьезные приложения должны надежным образом обрабатывать исключительные ситуации, сохра-
нять, если возможно, выполнение программы или, если это невозможно, аккуратно ее завершать. На-
писание кода, обрабатывающего исключительные ситуации, всегда было непростой задачей, и явля-
лось источником дополнительных ошибок.
В Delphi это устроено в стиле С++. Исключения представлены в
виде объектов, содержащих специфи-
ческую информацию о соответствующей ошибке (тип и место- нахождение ошибки). Разработчик мо-
жет оставить обработку ошибки, существо-вавшую по умолчанию, или написать свой собственный об-
работчик.
Обработка исключений реализована в виде exception-handling blocks (также еще называется protected
blocks), которые устанавливаются ключевыми словами try и end. Существуют два типа
таких блоков:
try...except и try...finally.
Общая конструкция выглядит примерно так:
try
{ выполняемые операторы }
except
on exception1 do statement1; { реакция на ситуации }
on exception2 do statement2;
else
{ операторы по умолчанию }
end;
Конструкция try....finally предназначена для того, чтобы разработчик мог быть полностью уверен в том,
что, что бы ни случилось, перед обработкой исключительной ситуации всегда будет
выполнен некото-
рый код (например, освобождение ресурсов).
try
{ выполняемые операторы }
finally
{ операторы, выполняемые безусловно }
end;
2. ОБЩИЕ СВЕДЕНИЯ О КОМПОНЕНТАХ
2.1. Списки
Класс TList
Класс TList — универсальный список. Он представляет собой массив нетипированных указате-
лей и поэтому годится для хранения набора любых, в том числе разнотипных, данных и объектов. При
добавлении/удалении в список данные не создаются и не уничтожаются — эта обязанность лежит на
программисте. Приведем доступные ему методы и свойства класса:
property Items[Index: Integer]:
Pointer;
Возвращает
указатель на содержимое элемента списка с индексом
Index. Это свойство является векторным свойством, принимаемым по
умолчанию, и его имя можно при записи опускать (см. раздел "Свой-
ства").
property Count: Integer; Определяет число элементов в списке.
Обработка исключительных ситуаций Серьезные приложения должны надежным образом обрабатывать исключительные ситуации, сохра- нять, если возможно, выполнение программы или, если это невозможно, аккуратно ее завершать. На- писание кода, обрабатывающего исключительные ситуации, всегда было непростой задачей, и явля- лось источником дополнительных ошибок. В Delphi это устроено в стиле С++. Исключения представлены в виде объектов, содержащих специфи- ческую информацию о соответствующей ошибке (тип и место- нахождение ошибки). Разработчик мо- жет оставить обработку ошибки, существо-вавшую по умолчанию, или написать свой собственный об- работчик. Обработка исключений реализована в виде exception-handling blocks (также еще называется protected blocks), которые устанавливаются ключевыми словами try и end. Существуют два типа таких блоков: try...except и try...finally. Общая конструкция выглядит примерно так: try { выполняемые операторы } except on exception1 do statement1; { реакция на ситуации } on exception2 do statement2; else { операторы по умолчанию } end; Конструкция try....finally предназначена для того, чтобы разработчик мог быть полностью уверен в том, что, что бы ни случилось, перед обработкой исключительной ситуации всегда будет выполнен некото- рый код (например, освобождение ресурсов). try { выполняемые операторы } finally { операторы, выполняемые безусловно } end; 2. ОБЩИЕ СВЕДЕНИЯ О КОМПОНЕНТАХ 2.1. Списки Класс TList Класс TList — универсальный список. Он представляет собой массив нетипированных указате- лей и поэтому годится для хранения набора любых, в том числе разнотипных, данных и объектов. При добавлении/удалении в список данные не создаются и не уничтожаются — эта обязанность лежит на программисте. Приведем доступные ему методы и свойства класса: property Items[Index: Integer]: Возвращает указатель на содержимое элемента списка с индексом Pointer; Index. Это свойство является векторным свойством, принимаемым по умолчанию, и его имя можно при записи опускать (см. раздел "Свой- ства"). property Count: Integer; Определяет число элементов в списке. 9
Страницы
- « первая
- ‹ предыдущая
- …
- 7
- 8
- 9
- 10
- 11
- …
- следующая ›
- последняя »