Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Objektreferenzen unterbinden

  Alt 12. Feb 2010, 23:26
Hallo,
Zitat von stiftII:
Habs so gemacht.. gibts da was zu beanstanden ?
ja, eine Kleinigkeit: das dynamische Array musst du mit Hilfe der Copy-Funktion kopieren:

Delphi-Quellcode:
// self.Piece := (source as tetrispiece).Piece;
  Self.Piece := Copy((source as tetrispiece).Piece);
Machst du das nicht, zeigen beide Referenzen auf ein Array. Jede Änderung in einem Array verändert dann auch die Werte des anderen Arrays. Diese Verbindung wird erst durch eine Längenänderung eines der beiden Arrays aufgehoben. Durch die Copy-Funktion werden direkt unabhängige Variablen angelegt.

Auch bei der Verwendung der Records ist die Copy-Funktion zum Übertragen des dynamischen Arrays notwendig!

Gruß Hawkeye
  Mit Zitat antworten Zitat