Студопедия

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

Разделы сайта

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






Создание нового типа исключения






Новый тип исключения создается в разделе типов модуля в виде:

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 ‑ усекает значение до целого путем отбрасывания дробной части.

Форматирование






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.