有人能告诉我们这两个函数之间的区别吗?
我的理解是,前者是VB.net函数,但后者不符合CLS?所以,我有点困惑。
此外,使用它们的最佳实践是什么?
非常感谢,
Keith
主要区别在于CBool
计算表达式,其中as Convert.ToBoolean()
接受一个参数。显然,您可以通过使用括号并执行.ToString()
来轻松解决此问题,但CBool
只是VB.NET
喜欢实现的易用性功能之一。
由于整个表达原因,CBool
具有不安全的可能性。这意味着直到运行时才会捕捉到表达式中的错误。其中,就好像您向Convert.ToBoolean()
提供了相同的表达式,而它对参数字段无效一样,语法分析器会抛出一个问题,并拒绝您构建/运行,直到您解决该问题。