我有这个功能
public static implicit operator MyClass(string v) { return new MyClass(v); }
并写 var.myclass = null;。这会调用隐式运算符并将 null 作为字符串传递,这会对我的代码造成严重破坏(我使用反射并且不想添加特殊情况)。我怎样才能写 myclass = null 而不会导致隐式运算符?
我试着写
public static implicit operator MyClass(string v) { return v == null ? null : new MyClass(v); }
但这会导致堆栈溢出