A jak się przekazuje jako tablice otwarte?
Tablice otwarta (otwarty parametr tablicowy) przekazuje sie tak:
procedure Ble (Tablica:array of integer); //to jest wbrew pozorom tablica otwarta a nie dynamiczna
jako parametr tablicowy mozna przekazac tablice dynamiczna albo statyczna. Trzeba tylko pamietac, ze wewnatrz procedury tablica jest indeksowana od zera, nawet jesli byla to tablica statyczna indeksowana od 1 czy od 212. Wewnatrz procedury nie mozna zmieniac dlugosci tablicy otwartej (co ma sens, skoro jako otwarta mozna przekazac statyczna).
Zeby moc zmieniac dlugosc parametru tablicowego wewnatrz procedury, nalezy przekazywac parametr jako tablice dynamiczna, a nie otwarta, tzn:
type MojaTablicaDynamiczna=array of integer;
procedure Ble(Tablica: MojaTablicaDynamiczna);