Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Stevie,
25. Mär 2021
Hab schon Autokorrektur beim Lesen, da so viele Leute defekten Pseudocode schreiben.
Offensichtlich funktioniert die auch nicht fehlerfrei. :mrgreen:
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Stevie,
24. Mär 2021
Die Rede ist von open array parametern und nicht von statischen arrays - logisch, dass das da out of bounds ist - war das ne Fangfrage? :roll:
Den base index einer Range vermischen ist immer eine Gefahr - ändert aber nix daran, dass open array zero based ist.
Wenn ich also von einer Funktion, die ein open array entgegen nimmt, einen Index für ein übergebenes n-based array geliefert...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Stevie,
24. Mär 2021
Sorry, aber das ist leider falsch - ein open array parameter besteht aus dem Pointer aufs erste Element und den letzten index.
for i := 0 to High(values) ist somit immer korrekt.
Kannste auch im disassembly angucken, aus Low(values) wird immer stumpf hardcoded 0.
Und deshalb geht damit auch sowas schickes.