补充一下:定义对象变量语句和赋值语句可以和二为一
Dim myClass As Class1
Set myClass = New Class1
可以变成
Dim myClass As New Class1
帮助里面的描述是这样的:
如果使用 New 来声明对象变量,则在第一次引用该变量时将新建该对象的实例,因此不必使用 Set 语句来给该对象引用赋值。
这句我就不解释啦,描述的很清楚。
这个代码大家肯定非常清楚,d是对象变量,Scripting.Dictionary是类(实际上Scripting是库,Dictionary是类,我们添加了引用库后,就可以不写库名啦,所以也可以写成Dim d As Dictionary),New dictionary是创建对象(Dictionary类的实例)
方法二:
如果我们没有引用库的操作:
那么我们就要这样来写代码
Sub test()
Dim d as object
Set d = CreateObject("Scripting.Dictionary")
ENd Sub
复制代码
在上面的代码中,也没有用到new关键字,为什么呢?
是这样的,set语句帮助里有这么一句话:
可以用 New 关键字或 CreateObject 函数,在 Set 语句中赋值对一个新的对象的引用。