是否可以使用该程序注册接口RegisterExpectedMemoryLeak
?
我有一个私有字段声明为:
FDragDropTarget: IDropTarget;
然后我创建一个实例并尝试为这个对象注册一个已知的内存泄漏:
FDragDropTarget := TDropTarget.Create(lcMain.Handle, FDragDrop);
RegisterExpectedMemoryLeak(FDragDropTarget);
但是,我收到一个编译器错误,指出存在不兼容的类型:“Pointer”和“IDropTarget”。对我来说,我的接口实例还是一个指针?
那我可以这样做吗?它是通过 ReportMemoryLeaksOnShutdown := 我在 .dpr 文件中的 True 声明进行报告的。
begin
ReportMemoryLeaksOnShutdown := True;
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm2, Form2);
Application.Run;
end.
TDropTarget 是我对 IDropTarget 接口的实现:
TDropTarget = class(TInterfacedObject, IDropTarget)
...
end;
谢谢