Ich habe diese FunktionProblem mit impliziter Umwandlung und null
public static implicit operator MyClass(string v) { return new MyClass(v); }
und schreiben var.myclass = null ;. Dies ruft den impliziten Operator auf und übergibt Null als String, was Chaos in meinem Code verursacht (ich benutze Reflektion und möchte keinen Sonderfall hinzufügen). Wie kann ich myclass = null schreiben, ohne den impliziten Operator zu verursachen?
Ich versuchte
public static implicit operator MyClass(string v) { return v == null ? null : new MyClass(v); }
Schreiben Aber das führt zu einer Stackoverflow
Ist MyClass eine Struktur? Welches Argument nimmt Ihr Konstruktor an? – SLaks
Kannst du es stattdessen als expliziten Operator schreiben? –
Ich kann Ihr Problem nicht reproduzieren; Sie haben wahrscheinlich etwas anderes falsch. – SLaks