在Ada中,异常可以用于处理程序运行时出现的错误或异常情况。下面是一个使用异常处理的示例代码:
with Ada.Text_IO;
use Ada.Text_IO;
procedure ExceptionHandling is
-- 定义一个自定义异常
My_Exception : exception;
procedure Process_Data(Data : Integer) is
begin
-- 判断数据是否满足某些条件
if Data < 0 then
-- 抛出自定义异常
raise My_Exception;
else
-- 执行正常的逻辑
Put_Line("Data: " & Integer'Image(Data));
end if;
end Process_Data;
begin
-- 调用过程,并捕获异常
begin
Process_Data(-5);
exception
when My_Exception =>
Put_Line("Caught My_Exception");
end;
-- 继续执行其他代码
Put_Line("Program continues...");
end ExceptionHandling;
在上面的代码中,定义了一个名为My_Exception
的自定义异常。在Process_Data
过程中,如果输入的Data
小于0,则会抛出这个自定义异常。在主过程中,调用Process_Data
过程,并使用exception
关键字来捕获可能抛出的异常。如果捕获到My_Exception
异常,那么会执行相应的处理代码,否则程序会继续执行其他代码。
这只是一个简单的异常处理示例,实际使用中可以根据需要定义不同类型的异常,并使用raise
关键字抛出异常,然后使用exception
关键字捕获并处理异常。
上一篇:Ada中的信号量
下一篇:Ada中的字符串数组