(это == ноль) в C #!

Из-за ошибки, которая была исправлена в C # 4, следующая программа печатаетtrue, (Попробуйте в LINQPad)

void Main() { new Derived(); }

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

В VS2008 в режиме Release он генерирует исключение InvalidProgramException. (В режиме отладки работает нормально)

В VS2010 Beta 2 это нет компилируется (я неt Beta 1); Я узнал, что трудный путь

Есть ли другой способ сделатьthis == null в чистом C #?

Ответы на вопрос(6)

Ваш ответ на вопрос