D duyuyu Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-13 #1 这两个方法都和构造对象有关,我是在搞不清出他们的关系, 请大家指教!
D duyuyu Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-13 #2 这两个方法都和构造对象有关,我是在搞不清出他们的关系, 请大家指教!
S stlont Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-13 #3 NewInstance只由delphi内部调用,不要直接使用他 一般应该使用Create
D dedema Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-14 #4 类调用Create时会由编绎器调用NewInstance来生成对象所需的内存.如果是由对象上调用Create,则相当于调用了一次Create函数.
H hxb_leiyuan Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-14 #5 对象生成过程实际上由三步构成: 1)NewInstance 它根据InstanceSize值使用_GetMem来为对象分配内存 2)InitInstance 依据VMT表的结构,初始化一系列属性,包括一般的属性,复杂类型(如动态数组等),接口引用计数等 3)ClassCreate 注意进行了前两步后,还不能称为对象,ClassCreate的作用就是设定对象的执行框架 虽然在TObject的Create中是空白,但编译器会在编译Create时,自动插入调用以上三个函数的调用指令
对象生成过程实际上由三步构成: 1)NewInstance 它根据InstanceSize值使用_GetMem来为对象分配内存 2)InitInstance 依据VMT表的结构,初始化一系列属性,包括一般的属性,复杂类型(如动态数组等),接口引用计数等 3)ClassCreate 注意进行了前两步后,还不能称为对象,ClassCreate的作用就是设定对象的执行框架 虽然在TObject的Create中是空白,但编译器会在编译Create时,自动插入调用以上三个函数的调用指令
D duyuyu Unregistered / Unconfirmed GUEST, unregistred user! 2005-04-15 #6 接受答案了,谢谢三位!尤其是hxb_leiyuan,谢谢你!