Я перехожу с Java / C ++ на Ada, и мне сложно разобраться в мелочах. Можно ли объявить массив и запросить у пользователя минимальные / максимальные значения, а затем инициализировать его? Мне не нравится определять постоянные значения для MIN и MAX, и кажется, что должен быть способ сделать это.
Вы можете определить неограниченный тип, но вам все равно нужно инициализировать размер в блоке объявления перед запуском вашей программы. Нужно ли мне иметь тело пакета, затем объявление процедуры, а затем блок объявления внутри процедуры, которая действительно выполняет эту работу, как показано ниже?
PACKAGE BODY Build_Graph IS
TYPE Graph_Box IS ARRAY(Integer RANGE <>, Integer RANGE <>) of Character;
PROCEDURE Print_Graph(Min, Max, Height, Width: IN Integer) IS
BEGIN
DECLARE
Graph: Graph_Box(0..Height, 0..Width);
BEGIN
Do_Stuf(Graph);
END;
END Print_Graph;
END Build_Graph;