dim a as object set a=new class1 大家说,这样实例化是编译时绑定,还是运行时绑定?严格说,这个不能叫后期绑定吧? Tiger_Zhao回复过我说,这个属于后期绑定。现在我感觉这个应该还是编译时绑定,而不是运行时绑定。 http://topic.csdn.net/u/20090504/09/833abb87-ec27-4d01-9277-b8a77e219c8a.html 谢谢您
我的理解是:VB中的object数据类型实际就是COM中的idispatch接口,该接口叫自动化接口,使用idispatch接口来调用基于idispatch接口派生出来的用户接口的某个方法或属性时,将统一由idispatch接口的invoke方法负责,这种方式就叫做后期绑定或后期关联;而直接使用用户接口如IXXX来调用用户接口IXXX的某个方法或属性时,就叫早期绑定或早期关联。
比如:
dim o as excel.application
set o=new excel.application
这是早期绑定,即编译时绑定,这是标准的早期绑定。
同时
dim o as excel.application
set o=createobject("excel.application")
这也是早期绑定。
而
dim o as object
set o=new excel.application
这是后期绑定,即运行时绑定。
同时
dim o as object
set o=createobject("excel.application")
这是最标准的后期绑定。