TYPEOF
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgTypeof
- 最后更新: 2024-02-25
返回变量的类型。
语法
Typeof ( variable | datatype )参数
variable
任何类型的变量。
datatype
一个 DataType。
说明
Typeof 是一个编译器内置函数,将自身替换为传递给它的变量的类型。它既可以用于变量声明(示例 1),也可以用于预处理器中的比较、打印。(示例 2)
Typeof 也支持传递任何内置数据类型或用户自定义类型(及其数据字段),不仅仅是定义为这些类型的变量。还支持表达式,类型从表达式中推断(类似于 Var)。
如果在当前作用域中存在同名的用户自定义类型和变量,则用户自定义类型优先于变量。为确保 Typeof 取变量而不是用户自定义类型,请用括号包裹 Typeof 的参数以强制将其视为表达式。例如 Typeof((variable))。
示例
示例 1:
start GeSHi
vb
Dim As Integer foo
Dim As TypeOf(67.2) bar '' '67.2' is a literal double
Dim As TypeOf( foo + bar ) teh_double '' double + integer results in double
Print SizeOf(teh_double)end GeSHi
示例 2:
start GeSHi
vb
Dim As String foo
#print TypeOf(foo)
#if TypeOf(foo) = TypeOf(Integer)
#print "Never happened!"
#endif
#if TypeOf(foo) = TypeOf(String)
#print "It's a String!"
#endifend GeSHi
版本
- 在 fbc 1.10.0 之前,
Typeof不返回 UDT 的非静态成员过程的类型。 - 在 fbc 1.08.0 之前:
方言差异
- 在 -lang qb 方言中不可用,除非使用别名
__Typeof引用。
与 QB 的区别
- FreeBASIC 新增
另请参阅
SizeofVarType (Alias)Type...End Type
返回 目录