首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VB6检查变量是否为对象

问VB6检查变量是否为对象
EN

Stack Overflow用户
提问于 2011-11-18 23:48:59
回答 4查看 5.5K关注 0票数 4

在Visual basic6中,有没有办法判断传递给函数的变量是否是对象?我希望能够测试变量是否为null、nothing或empty,但只有对象可以使用"Is Nothing“进行测试。有什么想法吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-19 00:27:27

函数是如何定义的?

如果它是... As Object,那么它要么是一个有效的object,要么是Null。

如果它是... As Variant (或没有类型),那么任何东西都可以传递,您可以使用IsEmpty()、IsNull() (注意,不是null对象,而是NULL值)或IsObject()进行检查,这取决于您在... Is Nothing检查之前到底想要检查什么。

如果参数是Optional,那么您可以使用IsMissing(),但它必须是没有默认值的变量类型。

此外,还可以查看this article中Null在VB中的各种用法。

票数 6
EN

Stack Overflow用户

发布于 2011-11-18 23:51:37

代码语言:javascript
复制
IsObject(variable)

不难找到

票数 4
EN

Stack Overflow用户

发布于 2011-11-18 23:54:42

VB中有一个TypeOf运算符。不是简单值的所有内容(如Integer等)类型为Object。

代码语言:javascript
复制
If TypeOf Variable Is Object Then
  ' ...
End If

TypeOf还允许继承检查。例如,Outlook文件夹中的邮件项既是Object类型,又是Outlook.MailItem类型,因此您可以通过这种方式对泛型变量variale执行实际的类型安全检查。

请注意,If TypeOf ... 不适用于类型化为简单值的变量(即整型),而仅适用于对象类型的变量(变量、COM对象、内置对象)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8185063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档