似乎很简单,但是无法编译:
procedure Main is
begin
exit 1;
end Main;
当使用gprbuild编译时,会产生:
Compile
[Ada] main.adb
main.adb:3:04: cannot exit from program unit or accept statement
main.adb:3:08: missing ";"
gprbuild: *** compilation phase failed
Ada中的exit关键字显然不像其他编程语言那样。那么,如何使用错误代码退出ada主过程?
怎么样:
with Ada.Command_Line;
procedure Main is
use all type Ada.Command_Line.Exit_Status;
begin
Ada.Command_Line.Set_Exit_Status(Failure);
end Main;
使您的Ada主程序一个函数,而不是一个过程,并返回您想要的退出代码:
function Main return integer is
begin
return 1;
end Main;