袁师懋徒弟闵:VB6 关于 SET 语句的提问

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 22:31:33
在 VB6 中:Dim P as Object
一、
SET P = New 自定义工程.自定义对象
二、
SET P = CreateObject("自定义工程.自定义对象")
两种方式有何不同,为啥在使用第二条语句的时候经常在编译阶段提示创建对象失败,运行时却不会出错。而语句一却没有这样的问题。

VB6 中,你说的这两种都属于后绑定对象,运行效率较低,但灵活性高。主要用在事先不知道 P 将是什么类型的时候使用。方法一是在编译时就已经确认了将要赋予 P 的对象类型,而方法二只是用一个字符串表示,直到运行到此时,才知道对象的类型。所以方法二可能产生无法检测的错误。

通常在知道 P 的类型时,应该使用前绑定方法:

Dim P As 自定义工程.自定义对象
Set P = New 自定义工程.自定义对象