largewang(垃圾王) :我觉得你说的不对。因为在create之前myclass1.str这么写应该会引起非法内存读写错误。但事实上没有。

解决方案 »

  1.   

    largewang(垃圾王) :但是,在create之前 myclass1.str 这么写应该会引起内存读写错误,但事实上没有。
      

  2.   

    largewang(垃圾王) :没有内存,对谁操作??
    不好意思,我还是不知道。我是用c++来理解dephi的。
    create和new不是一回事吗?
    哎,公司不能用QQ。
      

  3.   

    你的哪个类没有定义自己构造函数,那么就是继承TObject的构造函数了!
    那样的话你的哪个类就相当于一个普通的记录,你想想,你会对一个记录类型进行那样的操作吗?系统自动分配空间!
      

  4.   

    procedure TForm1.FormCreate(Sender: TObject);0D
    var
            myclass1:tmyclass;//申明了一个指向数据类型TMyClass的指针,你把TMyClass理解为一个记录类型就好理解了
    begin
    //      myclass1:=tmyclass.create(self);//(为什么没有这句也可以运行???)
            myclass1.str :='sdf';//
            myclass1.button1:=tbutton.create(self);
            myclass1.button1.parent:=self;
    end;