【发布时间】:2014-12-13 12:39:56
【问题描述】:
好的,所以我在一家公司工作,在我被聘用之前,该公司有一个人在用 Visual Basic 编写程序。但是,他生气了,跑了,所以我无法和他交流。我的工作是将他的程序转换为 C#。他没有接受过正式的编程培训,因此他的代码中根本没有 cmets。在他的代码中,他有以下行(用 C# 编写):
if (boolVariable == 13)
我假设我应该将 int 转换为 bool,反之亦然,但我想我会先问你们。为了给您更多信息,boolVariable 仅在另外两个地方被引用。它被设置为 false 的声明,并在另一个 if 语句中检查它是否为 true。代码中没有其他地方被定义为其他东西,所以我认为这可能是无用的代码。但是,这段代码不会导致 Visual Basics 中的错误,这也让我有些困惑。 Visual Basics 会自动为您转换吗?任何帮助将不胜感激。
【问题讨论】:
-
当 Visual Basic 将数值数据类型值转换为布尔值时,0 变为 False,所有其他值变为 True。
-
为什么是 13?为什么不是10?我会尝试理解 if 语句背后的逻辑并重写它,忽略愚蠢的数字。
-
boolVariable 是布尔值吗?还是他将其命名为 boolVariable 的 int,因为它返回一个布尔值。
-
这已经存在,但看看他是否覆盖了 == 运算符 msdn.microsoft.com/en-us/library/aa288467(v=vs.71).aspx
-
我认为这只是糟糕的编程。