Je suis d'essayer d'utiliser des méthodes d'extension pour ajouter un opérateur de surcharge pour le C# StringBuilder
classe. Plus précisément, compte tenu de StringBuilder
sb
, j'aimerais sb += "text"
de devenir l'équivalent d' sb.Append("text")
.
Voici la syntaxe pour la création d'une méthode d'extension pour StringBuilder
:
public static class sbExtensions
{
public static StringBuilder blah(this StringBuilder sb)
{
return sb;
}
}
Il ajoute avec succès l' blah
méthode d'extension pour l' StringBuilder
.
Malheureusement, la surcharge d'opérateur ne semble pas fonctionner:
public static class sbExtensions
{
public static StringBuilder operator +(this StringBuilder sb, string s)
{
return sb.Append(s);
}
}
Parmi les autres questions, le mot-clé this
n'est pas autorisée dans ce contexte.
Ajoutez la surcharge de l'opérateur via des méthodes d'extension possible? Si oui, quelle est la bonne façon d'aller à ce sujet?