在Ada中看不到“无界”

时间:2014-10-29 18:46:39

标签: ada gnat

我只是Ada的初学者,

我的代码看起来像这样,

with Ada.Strings.Unbounded;
use Ada.Strings.Unbounded;

procedure final is
Input : Unbounded.String;

begin
null;

end final;

当我用gnatmake编译这段代码时, 编译器给出错误"Unbounded" is not visible",这是什么意思?

1 个答案:

答案 0 :(得分:4)

use的{​​{1}}子句使该包内的声明直接可见。它不会使包名称本身(Ada.Strings.Unbounded)直接可见,因此对Unbounded前面没有Unbounded的名称.的任何引用都将是不正确的。< / p>

此外,该类型称为Unbounded_String,而不是String

改变这个:

Input : Unbounded.String;

到此:

Input : Unbounded_String;

(并请缩进你的代码。)