jak w temacie. Chodzi mi o to, żeby nie było z góry ustalone, że dana tablica ma np. 100 elementów lecz nieustaloną ilość
jak w temacie. Chodzi mi o to, żeby nie było z góry ustalone, że dana tablica ma np. 100 elementów lecz nieustaloną ilość
Tworzysz tablicę bez elementów.
Elementy : array of string;
Później musisz ustalic liczbe elementów.
SetLength(Elementy,rozmiar);
jeżeli tablica nie jest zmienną lokalną, przed zakończeniem programu wypadałoby ją wyczyścić: elementy:=nil;
Temat mi wyglądał na głupi, a okazał się całkiem sensowny. jest tylko jeden szkopuł: Tablica zawsze będzie czymś ograniczona, np MaxInt lub rozmiarem pamięci...
ale dynamiczna tablica może mieć max 255 pozycji!
ja swoja deklarowalem na 1024 :)
Tak trudno sprawdzić?
var
tab : array of string;
i : integer;
begin
for i := 0 to 1000000 do begin
SetLength(tab, Length(tab) + 1);
Label1.Caption := IntToStr(Length(tab));
Application.ProcessMessages;
end;
end;
Prawdę mówiąc nie chciało mi się czekać, aż się program wyłoży czy coś...Ale było dużo. Chyba tu jednak chodzi o rozmiar pamięci, a nie o jakieś wewnętrzne ograniczenia Delphi.
//DOPISANE
Czarownik, w poście poniżej trafiłeś w sedno :) [hurra]
zalezy od wolnej pamieci...
A ja niby co napisałem? właśnie że tablica może byc ograniczona m.in rozmiarem pamięci, ale to już się powtarza tutaj 3 razy