这里是否有人使用VB.NET并强烈赞成或反对使用IsNothing
而不是Is Nothing
(例如If IsNothing(anObject)
或If anObject Is Nothing...
)?如果是这样,为什么?
编辑:如果您认为它们都同样可以接受,您是否认为最好选择一个并坚持使用,还是可以将它们混合在一起?
最佳答案
如果在执行MSIL的过程中对其进行观察,您会发现它并没有编译成完全相同的代码。当您使用IsNothing()时,它实际上是对该方法进行调用,而不是仅对表达式求值。
我倾向于使用“什么都不是”的原因是,当我否定它时,它变成了“我不是什么”而不是我个人觉得更易读的“不是不是(对象)”。