更多关于包裹

Hello World 中 ,你了解了 Ada.Text_IO 包,以及如何使用它来执行程序中的 I / O 操作。可以进一步操作包以执行许多不同的操作。

重命名 :要重命名包,请在包声明中使用关键字 renames,如下所示:

package IO renames Ada.Text_IO;

现在,使用新名称,你可以对 Put_Line(即 IO.Put_Line)等功能使用相同的点分表示法,或者你可以使用 use IO 来实现它。当然,说 use IOIO.Put_Line 将使用包 Ada.Text_IO 中的功能。

可见性和隔离 :在 Hello World 示例中,我们使用 with 子句包含了 Ada.Text_IO 包。但我们也宣称我们希望在同一条线上使用。use Ada.Text_IO 声明可能已被移入过程的声明部分:

with Ada.Text_IO;
 
procedure hello_world is
   use Ada.Text_IO;
begin
   Put_Line ("Hello, world!");
end hello_world;

在此版本中,Ada.Text_IO 的程序,功能和类型可直接在程序中使用。在声明使用 Ada.Text_IO 的块之外,我们必须使用点分表示法来调用,例如:

with Ada.Text_IO;
 
procedure hello_world is
begin
   Ada.Text_IO.Put ("Hello, ");       --  The Put function is not directly visible here
   declare
      use Ada.Text_IO;
   begin
      Put_Line ("world!");            --  But here Put_Line is, so no Ada.Text_IO. is needed
   end;
end hello_world;

这使我们能够将 use …声明隔离到必要的位置。