我试图'Last
在 Ada 中将属性与 2D 数组一起使用,但我似乎找不到这样做的正确语法。
我知道如果我有一个一维数组/向量,我可以使用 A'last 或 A'last(n) 其中 n 是第 n 维。但是,如果我执行以下操作
type UnconstrainedArray_2D is array (Integer range <>, Integer range <>) of Integer;
function temp(tempIn : in Integer;
Table : in UnconstrainedArray_2D) return Integer is
tempTable : UnconstrainedArray_2D(0..tempIn, 0..tempIn);
begin
for i in 0..tempTable'last(1) loop
for j in 0..tempTable'last(2) loop
tempTable(i, j) := Table(i,j);
end loop;
end loop;
end temp;
我收到以下编译时错误:
Storage_Error 堆栈溢出(或错误的内存访问)
那么我做错了什么?
我在 Linux 上使用 GNAT Pro 6.4.1。