Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Wie gesagt LazyLoad wird verwendet (siehe Post #6) und ändert am Problem nichts...
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
LazyLoad wird im realen Code verwendet. Fehler tritt trotzdem auf. Auch mit einer protected Property. Das hier ist nun ein komprimierter Code um den Fehler zu zeigen...
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Selbst so geht es nicht:
property AdrProp: TAdresse read GetAdrProp write SetAdrProp;
function TForm1.GetAdrProp: TAdresse;
begin
Adresse.Vorname := 'a';
Adresse.Name := 'b';
result := Adresse;
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Danke für den Tipp. Die Frage ist nur, funktioniert das immer? Oder nur in 99% der Fälle? Damit werden Buchnungen verarbietet. Es darf keinen Fehler geben. Wenn ich in Vorname und Name nicht 'a' und 'b' stehen habe sonderen einen anderen Wert (den ich leider nicht notiert hatte) hat es mit dem Code aus Post #1 fast immer funktioniert. Nach dem 100. Aufruf war dann Plötzlich die PLZ oder die...
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Hab das mal eben ausprobiert: Als Vorname und Name wird dann auch 'b b' zurückgegeben. Klappt also auch nicht. Sehr merkwürdig.
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Was genau meinst Du damit? Mit Result := Adresse; wird es initialisiert/zugewiesen. Oder sehe ich das falsch?
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Result := Adresse; war schon immer in Post #1. Dein Lösungsvorschlag 2 steht genau so im Post #1.
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Das stört nicht. Siehe Post #6. Dort ist ein Abfrage, verhindert das Zeitaufwändiger Code bei jedem Aufruf ausgeführt wird.
Forum: Object-Pascal / Delphi-Language
by BlueStarHH,
29. Okt 2014
Ich frage weil ich eine Lösung brauche. Deine Antwort erscheint mir aber keine Lösung zu sein. Siehe mein Edit mit dem Verweis auf die Properties. Dort arbeitet man auch mit globalen Variablen die dann entweder über Getter oder Setter zugreifbar sind. Ist hier nichts anderes. Und wie sollte man es in meinem Fall anders lösen als über eine globale Variable? Mit Deiner vorgeschlagenen Lösung geht...