(this == null) em c #!
Devido a um bug que foi corrigido no C # 4, o programa a seguir imprimetrue
. (Experimente no 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()) { }
}
No VS2008 no modo de lançamento, ele lança um InvalidProgramException. (No modo de depuração, funciona bem)
No VS2010 Beta 2, ele não compila (eu não tentei o Beta 1); Eu aprendi isso da pior maneira
Existe alguma outra maneira de fazerthis == null
em c # puro?