ich nur eine Idee letzte nigth hatte, als einen if-Ausdruck schreiben und manchmal den Ausdruck neigen dazu, lang zu sein, wenn Sie es so haben:C# in betreiber Überlastung
if(x == 1 || x == 2 || x == 33 || x == 4 || x == -5 || x == 61) { ... }
x Aufzählungen sein kann, Streicher , ints, chars du bekommst das Bild.
Ich möchte wissen, ob es eine einfachere Möglichkeit gibt, dies zu schreiben. Ich denke an Bediener sql ‚in‘ beispielsweise als eay den Ausdruck zu verkürzen:
if(x in (1,2,33,4,-5,61)) { ... }
Ich weiß, dass Sie nicht einen Ausdruck wie dies mit ‚in‘, weil der Lexer und Parser des Compilers gewonnen schreiben Erkenne es nicht.
Vielleicht sind andere Lösungen als Erweiterung Methoden der verschiedenen Arten von x die Lösung? In der kommenden .NET 4.0 hörte ich etwas über parametrisierte Methoden, sollte das die Anzahl der Parameter lösen, die an den if-Ausdruck geliefert werden?
Vielleicht verstehen Sie mich, haben Sie eine Idee von einer guten Praxis/Lösung für diese Frage?
/Daniel
ich den Titel ein wenig verwirrend finden. Es scheint so, als ob Sie C# in einer Überlastung des Operators verwenden möchten. Ich setze den IN in Kappen, weil ich keine bessere Vorstellung davon habe, wie man das deutlicher machen könnte. –
interessante Frage obwohl –