ПредишенСледващото

Delphi програми имат вградена обработка подразбиране на изключения, които в някои случаи може да е достатъчно. вградени цели обработка на изключения, от една страна, за да получат повече информация за грешката и / или мястото на произход, и от друга страна, включването на родния код за нейното лечение, ако е стандартното лечение не е доволен.

За да бъде програмата на Delphi да използва механизма на управление на изключенията, е необходимо да се поставят съответните оператори в специални езикови конструкции Опитайте.

Дизайн опит. Най-накрая. край

Try..Finally дизайн гарантира, че програмата ще се представят на операторите, освобождавайки ресурси, независимо от това дали тя се предизвика изключение. По този начин, тази конструкция се използва, когато и да е, достатъчно е просто да се благополучно завършване на програмата след настъпване на изключение. Изключения от тези структури не са обработени, обработка се предава. Ако не е предвидено друго лечение, а след това контрол се предава на стандартен манипулатор.

Структурата на синтаксис е както следва:

<операторы захвата ресурсов>опитвам
<операторы, которые могут вызвать исключение>накрая
<операторы, освобождающие ресурсы>Край;

Трябва да се отбележи, че ако изключение да не се повишава, а след това на операторите на секцията Накрая ще освобождават също ресурси. Разликата се състои в това, че:
• На първо място, когато по изключение на операторите на секцията се опитайте да не се извършва, както и по време на нормална работа - всичко това изпълнено;
• второ, след освобождаването на ресурси поради списък възбуждане изключение изключение манипулатор ще продължи като изключения от тази структура не се обработват, но при нормална работа на оператора ще бъде изпълнена след изграждането Try..Finally.
Възможно е да се получат различни ресурси на Опитайте дизайн. Това гарантира, че дялът накрая в състояние правилно да освободи ресурси.

C: = курсора;
Курсора: = crHourGlass;
edDivr.Visible: = фалшива;
опитвам
A / B
накрая
Курсора: = С;
edDivr.Visible: = вярно;
приключи;

Дизайн опит. С изключение. край

С изключение на операторите в секцията извършват само когато по изключение се хвърля, но никога по време на нормална работа на програмата. Освен това, в раздела, освен може би някои обработи изключенията, всяка от които се фокусира върху определен тип изключение. След извършване на изявления от раздел Освен изключение, разрушена, и изпълнение на програмата продължава с твърдението, след изграждането Try..Except.

Структурата на синтаксис е както следва:

Както и преди, Опитайте раздел оператори да предизвика изключение. С изключение на раздел съдържа оператори, които извършват дейността почистване (почистване кода, прекратяване код). Въпреки това, ако не е настъпила грешка, а след това на операторите на секцията Освен прескачат.

Опитайте оператори раздел и в двете структури се наричат ​​защитен код.

опитвам
А / В;
с изключение на
lbRes.Caption: = 'Niht;
// повишаване;
приключи;

Опитайте вложени дизайн

Delphi ви позволява да използвате вложени дизайн на обработи изключенията. Разполагане дълбочина и последователност на структури следните не се ограничава. Общият синтаксис на вградените дизайни Опитайте:

Така че, както Try..Finally дизайн наистина не се занимава с изключение, а след това го затворете в рамките структура try..except на, ние сме с помощта Try..Finally дизайн може да се върне на системните ресурси, и едва след това с помощта на дизайн try..except справят с изключение ,

Свързани статии

Подкрепете проекта - споделете линка, благодаря!