Forum: Object-Pascal / Delphi-Language
Delphi
by Oxmyx,
9. Jan 2008
Mein Delphi 7 warnt wie erwartet:
function A(): Integer;
begin
Result := Result + 1;
end;
Unit1.pas(28): Return value of function 'A' might be undefined
Forum: Object-Pascal / Delphi-Language
Delphi
by Oxmyx,
9. Jan 2008
Gewöhne dir am besten an, Variablen immer zu initialisieren, also mit einem Wert zu belegen, bevor du sie verwendest. Delphi macht das in manchen Fällen zwar selbst, aber hier empfiehlt sich, konsequent zu sein. Nur so hast du Sicherheit, dass deine Variablen auf allen PCs die selben Startwerte haben. Alles andere führt nur dazu, dass dein Programm bei dir zu funktionieren scheint, und dann...
Forum: Object-Pascal / Delphi-Language
Delphi
by Oxmyx,
9. Jan 2008
Result ist eine lokale Variable, und ihr Gültigkeitsbereich endet beim Verlassen der Funktion. Dass beim zweiten Aufruf der Funktion die Variable oft wieder auf den selben Speicherbereich fällt, ist ganz normal. Speicherreservierung ist ja keine völlig wahlfreie Zufallsangelegenheit. Das heißt aber nicht, dass man damit irgend etwas machen könnte. Eine Variable ist nur innerhalb ihres...