Entwickler-Ecke

C# - Die Sprache - Mehr möglich mit ? ...


Hajoseb - So 18.11.07 11:30
Titel: Mehr möglich mit ? ...
Hi.

Es wurde ja schon der Nutzen von ? gezeigt ...


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
//Bedingung ? Wert1 : Wert2

y = (x == 0 ? 1: x); 

// oder

y = (x == 0) ?
    1:
    x;

Aber jetzt hab ich gerade entdeckt, dass man ? noch intensiver nutzen kann :D

Beispiel

C#-Quelltext
1:
2:
3:
// Gibt in Abhängigkeit von X entweder "einfügen" oder "sperren" aus ...

      LogFile.WriteLine((X==0) ? "einfügen" : "sperren");


Mfg Hajoseb


Christian S. - So 18.11.07 12:26

Und? Das ist doch nix besonderes. :nixweiss:
"?" gibt 'nen Wert zurück, dass egal ist, wie ich den benutze, ist irgendwie klar.


Kha - So 18.11.07 14:47

user profile iconChristian S. hat folgendes geschrieben:
Und? Das ist doch nix besonderes. :nixweiss:
Hätte ja sein können, dass er an Umlauten scheitert :mrgreen: .
Die Klammern kann man in den obigen Beispielen weglassen, die Priorität des ternären Operators ("?" würde ich ihn nicht nennen, da denke ich zuerst an Nullable Types) wird nur noch von der der Zuweisungsoperatoren unterboten.
Und wenn wir schon dabei sind: Den Null-Coalescing-Operator ?? gibt's auch noch, Chrome setzt dann noch einen drauf mit dem Colon-Operator : .


Christian S. - So 18.11.07 15:02

user profile iconKhabarakh hat folgendes geschrieben:
Chrome setzt dann noch einen drauf mit dem Colon-Operator : .
In Verbindung mit der Umsetzung von Nullable Types in Chrome ist der einfach super :D


Hajoseb - So 18.11.07 18:33

Na ja.

Es war halt für all jene gedacht, die "?" noch nicht kennen :wink:

Dürften sicher so Einige sein ...

Mfg Hajoseb

(Insbesondere, da man nach "?" nicht im Forum suchen kann ...)