Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
30. Aug 2011
"zufällig" im sinne von, daß hier zufällig kein Getter verwendet wurde.
Wäre ja großer Zufall, wenn hier damals wirklich so geplant wurde, daß diese Codeoptimierung ausgenutzt werden konnte. :angle2:
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
30. Aug 2011
hmmmmm.
OK, wenn, dann aber nur, wenn direkt auf auf ein Feld zugegriffen wird.
Gut, so könnte es doch mal zufällig funktioniert haben. ( Codeoptimierung? )
Da aber theoretisch auch ein Getter möglich wäre, würde/dürfte es dennoch nicht gehn.
PS: Das ist/war natürlich auch ein "Sicherheitsloch", da es ja als "schreibgeschützt" deklariert war. :angle:
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
30. Aug 2011
Sobald lesend auf ein Property zugegriffen wird (also nicht Property := ...), wird READ verwendet, welches eine lokale Kopie des Wertes erstellt.
Alles was in dieser Kopie verändert wird, hat keinen Einfluß auf das Property.
(bei direkten Zugriffen auf Felder ht es doch Einfluß, was aber so nicht erlaubt ist)
Darum wirft man hier nun auch endlich mal einen Compiler-Fehler.
Was aber...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
30. Aug 2011
In 2010/XE gab es ein paar Änderungen bezüglich der Zugriffsprüfungen von Const-Parametern und anderen Konstanten.
Kann schon sein, daß sich da ein Bug versteckt hat.
PS: Copy (_Name, 0, NameLen-1); ... 0?
Stimmt, also ist diese Meldung wohl richtig