ADOQuery1:=TAdoQuery.Create(nil)
form1:=Tform1.Create(self)
form1:=tform1.create(application)中
nil:是不表示没有时创建
那self和application表示什么?

解决方案 »

  1.   

    在创建类实例时,要给这个实例定个所有者,在这个Owner释放时会自动把这个实例也释放
    create(self) 一般在 TForm 的过程中使用,这时self 就表示那个 Form
    Create中的参数表示由谁负责内存的释放.
    如果是 nil,在不需要的时候,程序序必须调用相应的 Free 来释放内存.
    如果是 self( 或其它的非 nil) ,则在Self,自身释放内存时,会释放动态创建的
    控件(*)的内存,不需要程序员调用相应的 Free 来释放内存
      

  2.   

    Owner简单的说就是  由谁来释放我,看看OBJECT PASCAL 就知道了
      

  3.   

    owner是拥有组件的控件或窗体。
      

  4.   

    参数代表Owner.
    也就是什么时释放的问题