Ich kann anscheinend nicht finden, was ich auf Google brauche, und wette, ich werde eine schnelle Antwort hier bekommen.
%Vor%das? : Syntax sieht für mich korrekt aus. Ich bekomme jedoch einen Compilerfehler.
Programm.cs (13,28):
Fehler CS1002:; erwartetes
Programm.cs (13,28):
Fehler CS1525: Ungültiger Ausdrucksterm ':'
Programm.cs (13,30):
Fehler CS1002:; erwartet
Nicht sicher über die csharp-Syntax, aber das baut in cpp. Bitte helfen Sie! Danke!
UPDATE: Etwa 10 von euch geben die richtige Antwort LOL, also werde ich nur an die erste Person vergeben, die sie eingereicht hat.
interessante Syntax, und ich denke, ich mag es eigentlich besser als C ++ Syntax.
Der eigentliche Code, für den ich das tue, ist:
%Vor%Ihr Code sollte lauten:
%Vor% Dies entspricht jedoch nur dem Aufruf von b.ToString().ToLower()
. Das heißt, ich vermute, dass Ihr tatsächlicher Anwendungsfall etwas komplexer ist, als nur den booleschen Wert in eine Zeichenkette umzuwandeln.
Aktualisieren
Wie in den Kommentaren angegeben, ist die Bedingung Operator gibt einen Wert zurück; Es ist nicht für den Kontrollfluss wie if
/ else
.
Aber Sie könnten das einfach tun:
%Vor%Oder schneiden Sie sogar den Mittelsmann ganz aus:
%Vor%Der ternäre Operator erlaubt keine Statement-Umschaltung, nur Wertumschaltung. Sie möchten dies tun:
%Vor% (offensichtlich b.ToString()
) ist eine bessere Lösung für dieses spezielle Problem, aber ich gehe davon aus, dass dies nur ein Beispiel ist).
Tags und Links c# conditional-operator