Delphi没有垃圾回收器,所以对于有Java背景的人来说,这真是一件令人头痛的事情。
通常,为了释放我不再使用的某些内存,我会使用:
通常,为了释放我不再使用的某些内存,我会使用:
if (SomeMemory <> nil) then
SomeMemory.Free
如果在删除之前不检查nil
,会发生什么?
此外,为什么有人想要自己处理所有这些“垃圾收集”呢?为什么在Delphi的所有编译选项中,没有Garbage Collector = true
?
var Form1: TForm1
),我建议您使用FreeAndNil(Form1)
,以避免变量指向无效引用的问题。 - GabrielF