Da meine "demo" schon 7x geladen wurde und keinerlei rückmeldung kommt, nehme ich an das auch bei anderen Delphi-versionen keine warnung kommt.
Wäre toll wenn dieses noch als rückmeldung käme. Ein satz reicht um hier nicht weiter abzugleiten.
Es kommt keine Warning, weil du mit Break aus der Schleife gehst und daher i einen definierten Wert hat (wie oben schon zitiert wurde). Hast du kein break, wird eine Warning ausgegeben. Und in der Tat steht bei mir i dann auf 10, obwohl laut der Schleife nur von 0 bis 9 gelaufen wird.
- An deiner Demo kann man gar nicht sehen, ob die Suche "von oben" oder "von unten" läuft, weil du nur ein Element mit Wert True in MyArray hast. Erst, wenn man noch ein weiteres einfügt (z.B. MyArray[7] := True;
), wird's aussagekräftig.
- Ich habe Optimierung aktiviert. Trotzdem läuft i bei mir (D2007) im Debugger hoch und nicht runter.
Also irgendwie kann ich kein Problem feststellen.
Im Debugger sieht man auch nix vom rückwärts laufen, sondern nur im
asm code (wurde auch im Eingangspost erwähnt)