2011-01-21 80 views

回答

3

从MSDN,Boolean Data Type (Visual Basic)

当Visual Basic数字数据类型值转换为Boolean,0变为假,所有其他值成为现实。

所以,任何数量的从0

+0

我明白了。我并不真正理解这种实现的巨大好处 - 我通常是一个“明确的而不是隐含的” - 种人,但这是一个不同的问题。 ;) 感谢你的回答。 – 2011-01-21 13:58:05

1

任何非零整数值=布尔值为真。整数值的

比较可以在布尔表达式中被使用。

+1

几乎正确。真是任何非零值。所以负值也等同于真实。 – 2011-01-21 13:47:56

2

真转换为Boolean计算到True,除了被等同为任何非零值。您应该收到

If -3 = True Then 
0

@Oded“L相同的响应 - 在猜测,这可能是因为VB6/VBA这样的行为,并保留使用这些语言的开发人员在他们的快乐地带 - 奥德3天前“

事实上,我所了解的情况是,Visual Basic 6.0和VBA是在与编程社区在其治疗布尔的休息机会,在对于这两种语言,-1 =真正。向“除0以外的任何值=真”的过渡是为了向后兼容。

我相信,世界上大多数国家,最重要的运营商是0 =假。除0之外的任何值均解析为true。

虽然在很多情况下,我打赌的标准是0 =假1 =真。当Microsoft开发VB.NET时,他们需要保留向后兼容性,以便从Visual Basic 6.0/VBA中保留-1 = true。因此,他们的True = <> 0。通过这种方式,1或-1将解析为真。这似乎比一个更复杂的条件语句更清晰,它涵盖了1或-1两种情况。本质是什么,他们降落直的评价比0

以外的任何值进行核对。如果你仔细想想,这似乎与基本的二进制概念一致为好。开关打开(除0之外的某个值)或关闭(值为零)。