VarType(V) and varTypeMask = varDouble
若V包含Double或Double数组,则它返回True(掩码简单地隐藏了第一位,它指示变体类型是否存储一个数组)。在System单元定义的TVarData记录类型能被用来转换变体类型,构造。请参考帮助取得VarType的类型码列表,要注意,在加新的类型码。
Variant types conversions(Variant类型转换)所有的整数、实数、字符串、字符和布尔类型与Variant是赋值兼容的。表达式能明确转换为VarAsType和VarCast标准例程能用来改变一个Variant的内部表示。当Variant和其它类型混用时会发生的一些自动转换。
var
V1, V2, V3, V4, V5: Variant; I: Integer; D: Double; S: string; begin
V1 := 1;{ 整数值 } V2 := 1234.5678; { 实数值 } V3 := 'Hello world!'; { 字符串 } V4 := '1000'; { 字符串 } V5 := V1 + V2 + V4; { 实数值 2235.5678} I := V1;{ I = 1 (整数值) } D := V2;{ D = 1234.5678 (实数值 S := V3;{ S = 'Hello world!' (字符串 I := V4;{ I = 1000 (整数值) } S := V5;{ S = '2235.5678' (字符串end;
编译器依据下面的规则进行类型转换:
TCustomVariantTyp的子类,值的类型由类型码指
VarType的返回值并且可以访问它们的内部Object Pascal的未来实现中,可能会添
Variant,下面代码演示了Variant的使用以及) } ) } ) } - 67 -
是一个位掩码,用来从
Data types, variables and constants integer
转换为整数
real 转换为实数
string 转换为字符串形式
按区域设置转换为字符串形式
转换为
string/character格式
character
Boolean
同string(左边) 若0则返回
False,其它为True。 同string(左边) 若0则返回
False,其它为True。 同string(左边) 若是字符串
“false”(大小写无关)或值为0的数字串,则返回False,若是字符串“true”或值为非0的数字串,则返回True。其它情况产生异常。
同string(上边)
real
圆整为最接近的
整数
转换为整数,需要的话会截断;若不是数字则引发异常。
转换为实数
string
按区域设置转换为实数,若不是数字则引发异常。
character Boolean
同string(上边) 同string(上边)同string(上边)和string转换为
string相同 False=0,True=-1 False=0, (若是Byte,则True=-1 是255) 引发异常
引发异常
False=“0”, True=“-1”
同string(左边),
True=True 同string(左边)同string(左边) 引发异常
Unassigned Null
空串
引发异常
超出范围的赋值经常使目标变量取得它的最大值,无效的赋值或转换引发EVariantError异常。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23665-47.html
好看好看#宋茜#