更新:2007 年 11 月
错误消息
对同一变量进行比较;您是要比较其他变量吗?如果您是要比较其他变量,则您只需更正语句。
但另一种可能是您要测试真假值,并通过类似 if (a == a) (true) 或 if (a < a) (false) 这样的语句来完成此操作。最好简单地说成 if (true) 或 if (false)。这有两个原因:
它更简单;更清楚地表达您的意思。
它可以避免混淆:C# 2.0 的一个新特性就是可为 null 的值类型,这类似于 T-SQL(SQL Server 使用的编程语言)中的值 null。由于 T-SQL 中使用了三重逻辑,熟悉 T-SQL 的开发人员可能关心可为 null 的类型在类似 if (a == a) 这样的表达式上的效果。如果您使用 true 或 false,您就可以避免这类可能出现的混淆。
示例
下面的代码生成警告 CS1718。
复制代码 | |
---|---|
// CS1718.cs using System; public class Tester { public static void Main() { int i = 0; if (i == i) { // CS1718.cs //if (true) { i++; } } } |