Skip to content

VarType

返回一个VbVarType值,标识变量的子类型或对象默认属性的类型。

语法:VarType( varname )

varname
必需 Variant,包含除用户自定义类型变量之外的任何变量。

返回值是VbVarType枚举的常量之一,或其中一个常量与vbArray之和。最常用的值如下:

常量描述
vbEmpty0Empty(未初始化)。
vbNull1Null(无有效数据)。
vbInteger2Integer
vbLong3Long整数。
vbSingle4单精度浮点数。
vbDouble5双精度浮点数。
vbCurrency6Currency
vbDate7Date
vbString8String
vbObject9对象引用。
vbError10错误值。
vbBoolean11Boolean
vbVariant12Variant(仅用于Variant数组)。
vbDecimal14Decimal
vbByte17Byte
vbLongLong20LongLong(仅64位)。
vbUserDefinedType36包含用户自定义类型的Variant
vbArray8192数组。返回时始终加到另一个值上。

如果传入对象且具有默认属性,**VarType(object)**返回该默认属性的类型。

VarType从不单独返回vbArray;它始终加到另一个值上以指示特定子类型的数组。例如,Integer数组返回vbInteger + vbArray,即8194。常量vbVariant仅在与vbArray结合时返回,表示Variant数组。

INFO

twinBASIC还公开了泛型形式VarType(Of T),用于泛型类型说明符的编译时验证。非泛型调用使用特殊的内部绑定,因此其行为可能不像常规函数。

示例

本示例使用VarType确定多个变量的子类型。

vb
Dim MyCheck As VbVarType
Dim IntVar As Integer, StrVar As String, DateVar As Date
Dim ArrayVar As Variant
IntVar = 459
StrVar = "Hello World"
DateVar = #2/12/1969#
ArrayVar = Array("1st Element", "2nd Element")

MyCheck = VarType(IntVar)             ' Returns 2  (vbInteger).
MyCheck = VarType(DateVar)            ' Returns 7  (vbDate).
MyCheck = VarType(StrVar)             ' Returns 8  (vbString).
MyCheck = VarType(ArrayVar)           ' Returns 8204 — vbArray + vbVariant.

另请参阅

twinBASIC及其LOGO版权为作者"韦恩"所有