[原创] Delphi Create(Application) 和 Create(nil) 的区别

Posted 滔 Roy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[原创] Delphi Create(Application) 和 Create(nil) 的区别相关的知识,希望对你有一定的参考价值。

Delphi Create(Application) 和 Create(nil) 的区别:

例如:

Form1:=TForm1.Create(Application);

Form1:=TForm1.Create(nil);

 

Create(Application)  :程序创建时会将对象添加到属主对象的组件(TComponent)列表中,当属主对象销毁时首先查看并销毁属主对象的从属对象,即当Application对象释放时会自动释放从属对象。

    这里又要衍生一个概念及应用程序对象即Application对象,是 TApplication类的实例,Delphi应用程序都是封装在Application对象中的,Application对象对应用程序框架进行统一管理。

    Application对象在初始化时会创建一个创库大小为0的隐含窗口,这个是程序的主窗口,其他所有都是这个主窗口的子窗口。

Create(nil) :如果属主对象参数为nil,那么组件需要手工销毁,否则将会造成内存泄露。

 

来源于:https://www.cnblogs.com/guorongtao/p/12032958.html

以上是关于[原创] Delphi Create(Application) 和 Create(nil) 的区别的主要内容,如果未能解决你的问题,请参考以下文章

请教delphi中create函数的用法(原型和例子)

Delphi Create(nil), Create(self), Create(Application)的区别

delphi拦截错误提示

[原创]Delphi编程之Win10桌面图标设置

[原创] Delphi InputBoxInputQuery函数

delphi 中 raise exception.create(Error) 怎么翻译成C++ 语言?