Hallo,
Delphi-Quellcode:
Objekt1 : TTyp1;
Objekt2 : TTyp1;
Objekt3 : TTyp1;
Objekt1 := TTyp1.Create(Self); // 1)
Objekt2 := Objekt1; // 2)
Objekt1.Free; // 3)
Objekt2 := Objekt3; // 4
1) Ein Objekt vom Typ "TTyp1" wird erstellt. die Variable Objekt1 zeigt auf dieses Objekt (Pointer)
2) Jetzt zeigt auch die Variable Objekt2 (Pointer) auf das eben erstellte Objekt (NICHT kopiert)
3) Das Objekt wird im Speicher zerstört. Objekt1 und Objekt2 zeigen auf eine ungültige Speicherstelle.
4) Da Objekt3 niemals initialisiert wurde zeigt Objekt3 IRGENDWOHIN. Mit großer Sicherheit auf eine ungültige Speicherstelle. Das tut der Zeiger Objekt2 danach auch. (sinnlos)
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."