warum kann ich die Methode MachwasmitTestvalue auch nach der Freigabe von ObjectA aufrufen?
Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var ObjectA:TObjectA;
begin
ObjectA := TObjectA.Create;
try
lblA.Caption:=ObjectA.testvalue;
//ObjectA.MachWasMitTestValue;
finally
ObjectA.Free;
end;
ObjectA.MachWasMitTestValue;
end;
eigentlich gehört sie doch in den try... finaly-Abschnitt, wie auskommentiert dargestellt.
Ähm. Deinen Post verstehe ich nicht. Ist der Code von dir, oder von einem ggf. gelöschten Post?
Natürlich gehört die Anweisung in den Try...finally Block und muss aufgerufen werden bevor das Objekt wieder freigegeben wird.
Wenn es doch funktioniert, ist es Zufall, weil der Speicherbereich, in dem sich das instanzierte Objekt befunden hatte, noch nicht überschrieben wurde.