J'ai cette fonctionproblème avec la conversion implicite et nulle
public static implicit operator MyClass(string v) { return new MyClass(v); }
et écrire var.myclass = null ;. Cela appelle l'opérateur implicite et passe null comme une chaîne, ce qui provoque des ravages dans mon code (j'utilise la réflexion et je n'aimerais pas ajouter un cas particulier). Comment puis-je écrire myclass = null sans provoquer l'opérateur implicite?
J'ai essayé d'écrire
public static implicit operator MyClass(string v) { return v == null ? null : new MyClass(v); }
Mais cela provoque une stackoverflow
Ma classe est-elle une structure? Quel argument votre constructeur prend-il? – SLaks
Pouvez-vous l'écrire en tant qu'opérateur explicite à la place? –
Je ne peux pas reproduire votre problème; vous avez probablement quelque chose d'autre qui ne va pas. – SLaks