VB6.0中“=”运算符参与多种运算: 赋值运算和比较运算。在实际应用中,怎么正确选择它们的用法呢?以下讨论这个问题。
“=”运算符在独立表达式中为赋值符号,而在嵌套使用的非独立表达式中为比较符号。
本例的关键代码如下:
‘=在独立表达式中为赋值符号
Private Sub Command1_Click()
Dim a As Integer, b As Integer, c As Integer
a = 3
b = 2
c = a > b
Print c
‘结果为:-1 因a > b为True,自动转换为整数为-1
‘结论:通过比较,这里的=运算符,为赋值符号。
a = 3
b = 5
c = a > b
Print c
‘结果为:0
Dim d As Variant
a = 3
b = 2
d = a > b
Print d
‘结果为:True
a = 3
b = 5
d = a > b
Print d
‘结果为:False
End Sub
‘=在非独立表达式中为比较符号
Private Sub Command4_Click()
Dim a As Integer, b As Integer, c As Integer
a = 3
b = 2
‘1模块
b = -1
c = 3
Print c = a = b
‘结果为:True
‘c = a为True,自动转换为整数为-1,-1 = b为True,故第3部分的结果为True
‘2模块
b = 0
c = 3
Print c = a = b
‘结果为:False
‘c = a为True,自动转换为整数为-1,-1 = b为False,故第3部分的结果为False
‘1、2模块说明:True自动转换为整数为-1,而不是0
‘3模块
b = 0
c = 2
Print c = a = b
‘结果为:True
‘c = a为False,自动转换为整数为0,0 = b为True,故第3部分的结果为True
‘4模块
b = -1
c = 2
Print c = a = b
‘结果为:False
‘c = a为False,自动转换为整数为0,0=b为False,故第3部分的结果为False
‘3、4模块说明:False自动转换为整数为0,而不是-1
End Sub