Mit dem ternären Operator ist es möglich, so etwas wie die folgende (unter der Annahme Func1() und Func2() gibt einen int zu tun:Ternary Operatoren in C#
int x = (x == y) ? Func1() : Func2();
Allerdings ist es eine Möglichkeit, das zu tun gleiche, ohne einen Wert zurückkehrt zum Beispiel so etwas wie (unter der Annahme Func1() und Func2() return void):
(x == y) ? Func1() : Func2();
ich weiß, dies erreicht werden könnte, eine if-Anweisung, fragte ich mich nur, wenn es ein Weg, es so zu machen.
Entschuldigen Sie, um zu picken, aber der richtige Name ist der bedingte Operator http://msdn.microsoft.com/en-us/library/aa691313(VS.71).aspx –
@Brian: In demselben Artikel "Es wird manchmal auch als ternärer Operator bezeichnet ". Also, beide werden benutzt. –
@Nelson - in der Weise, dass das Summenzeichen kann auch ein binärer Operator genannt werden, und dass der Inkrementierung Operator kann auch unäre Operator genannt werden? Ja ... aber es ist immer noch nicht die richtige Art, es zu benennen, obwohl es normalerweise der einzige bekannte ternäre Operator ist. (Gibt es mehr? Gute Frage.) – ANeves