我写了一个像这样的简单类:
TMyClass = class procedure MyProcedure(Sender : TObject); end;
我正在执行“MyProcedure”,在对象被释放后我永远不会引用“Self”:
var MyObj : TMyClass; ProcOfObj : TNotifyEvent; begin MyObj := TMyClass.Create; try ProcOfObj := MyObj.MyProcedure; finally MyObj.Free; end; ProcOfObj(Self); end;
它有效,但我想知道它是否是一种安全的做法,或者它是否会引起一些问题.