Hallo,
Zitat von
Daniel G:
Zitat von
xaromz:
Du verwendest die Variable in Deinem Quellcode, Delphi verwendet sie nicht.
Kannst du das näher erläutern? Ich komm' grad nicht mit.... Wie "zählt" Delphi dann?
wenn möglich, läuft eine Schleife vom Maximum runter bis Null, weil ein Vergleich auf Null schneller ist.
Wenn die Schleifenvariable zur Indizierung eines Arrays genutzt wird, dann benötigt Delphi die Variable nicht.
Ich erkläre das am Besten mal an einem Beispiel:
Wir zählen von 1 bis 10 und haben ein Array [1..10] of Integer
Wenn wir das so schreiben:
Delphi-Quellcode:
var
C: Integer;
A: array [1..10] of Integer;
begin
... initialisieren
for C := 1 to 10 do
Result := Result + A[C];
end;
dann baut Delphi das ungefähr so um:
Delphi-Quellcode:
var
C: Integer;
A:
array [1..10]
of Integer;
P: ^Integer;
begin
... initialisieren
C := 10;
P := @A[1];
repeat
Result := Result + P^;
Inc(P);
Dec(C);
until C = 0;
end;
Wie man sieht, wird C für den Zugriff auf das Array nicht benötigt.
Gruß
xaromz