相关疑难解决方法(0)

(这= = null)在C#中!

由于在C#4中修复了一个错误,将打印以下程序true.(在LINQPad中试试)

void Main() { new Derived(); }

class Base {
    public Base(Func<string> valueMaker) { Console.WriteLine(valueMaker()); }
}
class Derived : Base {
    string CheckNull() { return "Am I null? " + (this == null); }
    public Derived() : base(() => CheckNull()) { }
}
Run Code Online (Sandbox Code Playgroud)

在VS2008的发布模式下,它会抛出InvalidProgramException.(在调试模式下,它工作正常)

在VS2010 Beta 2中,它没有编译(我没有尝试Beta 1); 我学到了很难的方法

this == null在纯C#中还有其他方法吗?

c# visual-studio-2010-beta-2 compiler-bug

129
推荐指数
4
解决办法
1万
查看次数

Java中的"this"可以为null吗?

在一个类方法中看到这一行,我的第一反应是嘲笑编写它的开发人员..但是,我认为我应该确保我是对的.

public void dataViewActivated(DataViewEvent e) {
    if (this != null)
        // Do some work
}
Run Code Online (Sandbox Code Playgroud)

那条线路会被评估为假吗?

java this

108
推荐指数
4
解决办法
2万
查看次数

标签 统计

c# ×1

compiler-bug ×1

java ×1

this ×1

visual-studio-2010-beta-2 ×1