Create(nil);//需要自己释放
Create(Self);//当Self释放时自动触发释放
Create(Application);//当Application释放时自动释放
Create(nil); 这种方式创建的对要自己手工进行FREE才会回收内存,其他很多内存泄漏就是忘了手工释放内存。
Create(Self);由self对象负责释放创建的对象,只self没有释放掉,这个对象的内存就不会被释入掉,除程序员手工进行释放,他会触发很多事件。性能不是很好。
Create(Application);
Create(Application.owner);
这两就是把self具体对象罢了
补充:
X:=TX.create(XX);
那么当XX被释放时,XX会帮你释放X,这样你就不需要自己释放X了,如
Form1:=TForm1.create(Form2);
那么当Form2 free时,它就会自动帮你释放Form1,你就不用自己释放Form1了。