ID : 574
2项运算中数据型的优先顺序
2项运算中指定不同数据型的数据时,通常按以下优先顺序自动转换成高级别数据后再进行运算。
优先顺序 | 数据型 |
---|---|
1 | 双精度实数型 |
2 | 单精度实数型 |
3 | 整数型 |
4 | 字符串型 |
5 | 矢量型 位置型 连接型 齐次变换型 |
运算示例
例1
Dim aaa As Integer
Dim bbb As String
aaa = 100
bbb = "DENSO"
PringDbg aaa + bbb
'Integer的aaa优先级较高,因此String的bbb自动转换为Integer。
'bbb无法自动转换为Integer,因此出现错误。
例2
Dim aaa As Integer
Dim bbb As String
aaa = 100
bbb = "90"
PringDbg aaa + bbb
'Integer的aaa优先级较高,因此String的bbb自动转换为Integer。
'输出190。
例3
Dim aaa As Position
Dim bbb As String
aaa = P(100, 200, 300)
bbb = "90"
PringDbg bbb + aaa
'String的bbb优先级较高,因此Position的aaa自动转换为String。
' 输出"90P(100, 200, 300, 0, 0, 0, -1)"
注意事项
ID : 574