更多关于包裹
在 Hello World 中 ,你了解了 Ada.Text_IO
包,以及如何使用它来执行程序中的 I / O 操作。可以进一步操作包以执行许多不同的操作。
重命名 :要重命名包,请在包声明中使用关键字 renames
,如下所示:
package IO renames Ada.Text_IO;
现在,使用新名称,你可以对 Put_Line
(即 IO.Put_Line
)等功能使用相同的点分表示法,或者你可以使用 use IO
来实现它。当然,说 use IO
或 IO.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 …声明隔离到必要的位置。