Создание нового типа исключения
Новый тип исключения создается в разделе типов модуля в виде:
Type <имя нового типа исключения>=Class(Exception) [<свойства> End];
Пример контроля за присутствием информации в поле ввода Edit1:
Type EPusto=Class(Exception); //создание собственного типа исключения
... If Edit1.text='' Then Raise EPusto.Create('Пустое поле');//генерация искл.
Else A:= Edit1.text; //использование значения поля ввода Edit1.
Пример создания нового исключения ETError со свойством NError:
Type ETError=Class(Exception) Public NError : Integer; End;//создание искл.
Var EError: ETError;... //объявление переменной типа ETError
Try ... If Err>0 Then //условие наличия ошибки. Err ‑ номер ошибки
Begin EError:=ETError.Create(‘Ошибка!’);//текст сообщения
EError.NError:=Err; //запоминание ошибки в свойстве
Raise EError; //генерация исключения и переход в Except
End;...
Except // раздел обработки исключений
On ETError Do //обработка созданного исключения ETError
Case EError.Nerror Of //варианты обработки ошибки
1: ... //обработка ошибки под номером 1
2: .. . //обработка ошибки под номером 2
...
End //окончание вариантов обработки ошибок
End; //окончание раздела обработки исключений
Вопросы для самопроверки и контроля
Вопросы для самопроверки
1. Каково назначение оператора Try?
Контрольные вопросы
1. Каково назначение раздела Finally в операторе Try?
Основные стандартные функции и процедуры
Для сокращения описания процедур и функций используются имена: S,S1,S2 ‑ строковые параметры, F - файловые переменные и H ‑ дескрипторы файлов, N ‑ целочисленные переменные.
Математические функции
Abs(R: real): real‑ возвращает абсолютное значение аргумента.
ArcTan(R: real): real ‑ возвращает арктангенс аргумента.
Cos/Sin(R: real): real ‑ возвращает косинус/синус аргумента.
Exp(R: real): real‑ возвращает экспоненту аргумента.
Frac/Int(R: real): real‑ возвращает дробную/целую часть аргумента.
Ln(R: rеal): rеal‑ возвращает натуральный логарифм аргумента.
Pi: real‑ возвращает значение числа Pi=3.1415926535897932385.
Randomize‑ инициализирует генератор случайных чисел.
Random[(R: word)] ‑ возвращает случайное число от 0 до R (1). Предварительно нужно выполнить функцию Randomize.
Round(R: real): longint ‑ округляет значение R до ближайшего целого.
Sqr(R: real): real ‑ возвращает аргумент в квадрате.
Sqrt(R: real): real ‑ возвращает квадратный корень аргумента.
Odd(X): Boolean ‑ проверяет, является ли аргумент нечетным числом.
Trunc(B: real): longint ‑ усекает значение до целого путем отбрасывания дробной части.
Форматирование
Дата добавления: 2016-03-22; просмотров: 526;