是什么意思阿?
---------------------------------------------------------------
Dim a As Cancer.Calendarpro
a.member1 = xxxx
这样是不行的!因为那个a并不指向一个具体的实例。
如果你需要操纵某一个已经创建的东西,那么就应该先对a赋值,而且要确保正确!如: a = ...
如果你需要一个新的Cancer.Calendarpro,那么:
Dim a As Cancer.Calendarpro
a = New Cancer.Calendarpro(...) '...具体要看那个Cancer.Calendarpro是怎么定义构造函数的。
a.member1 = xxxx
或者
Dim a As New Cancer.Calendarpro(...)
a.member1 = xxxx
简而言之,某个对象变量没有指向一个实体。
如果这种情况是有可能的,或者你没有办法去控制这种情况的出现——比如你要写一个过程模块,传递给你一个Cancer.Calendarpro对象,你的过程需要用到他,但是调用者不保证他一定是已经实例化了,那么你需要对这个情况进行判断:
Sub abc(ByVal a As Cancer.Calendarpro)
If a Is Nothing Then Return ' Or a = New ... 注意:不会返回到调用者那里!
a.xxxx
End Sub