在vb.net中如何判断调用语句是否向可选参数提供了实参。
vb.net吧
全部回复
仅看楼主
level 3
qiulihua66 楼主
在vb6.0中,使用IsMissing可以判断调用语句是否向可选参数传递了实参,例如,以下函数既可以求两个数的最大数,也可以求三个数的最大数:
Function Maxnum(a, b, Optional c)
Maxnum = a
If b > Maxnum Then Maxnum = b ' 求出a、b的最大值,保存在Maxnum中
If Not IsMissing(c) Then ' 如果调用过程为参数c传递了对应的实参
If c > Maxnum Then Maxnum = c ' 继续将Maxnum和c比较,求三个参数的最大值
End If
End Function
在vb.net中,没有IsMissing,有没有可以代替的函数或方法。
2012年06月24日 13点06分 1
level 3
qiulihua66 楼主
自己看了一下帮助,vb.net没有此功能,只能通过给可选参数设置一个特殊的默认值,然后再过程中判断可选参数是否等于该默认值来实现。
2012年06月24日 13点06分 2
level 10
IsMissing 函数已更改为 IsNothing
一般情况如果是引用对象,就设置其默认值为Nothing,值对象就设置一个需要的默认值
自己来判断更好
2012年06月24日 17点06分 3
1