C ++ Bedingter Operator

8

Ich habe einmal einen "-wired" -Operator in C ++ gesehen, der einen Wert zuweist, wenn größer als .. Es war eine Kombination von ? , < und =

z.B. Lassen Sie x = Wert, wenn der Wert größer als x ist

I bedeutet nicht x=(x<value)x:value

Es war eine Art x<?=value

Aber ich kann mich nicht genau erinnern und kann es nicht online finden ... Kann mich jemand daran erinnern?

Danke,

    
Betamoo 27.07.2010, 19:48
quelle

7 Antworten

8

gcc hat - in Version 3.3.6 mindestens! - eine gcc-spezifische Spracherweiterung, die spezialisierte Operatoren für die Implementierung von min und max bereitstellt. Vielleicht denken Sie daran?

Minimal- und Maximaloperatoren in C ++

Ich habe kein gcc, um es zu testen, aber es könnte auch ein Update-Formular haben.

    
please delete me 27.07.2010, 19:55
quelle
11

Es gibt keinen Operator, der Variablen basierend auf ihren relativen Werten zuweist.

Allerdings gibt es den Operator?::

%Vor%

Wenn Sie es von links nach rechts laut vorlesen, macht es Sinn.

    
Mike Caron 27.07.2010 19:51
quelle
4

Wie ist das:

%Vor%     
Nordic Mainframe 27.07.2010 20:01
quelle
1

Denken Sie an den ternären Operator ?

%Vor%     
Donald Miner 27.07.2010 19:50
quelle
0

Ich vermute, was Sie denken, ist eine gcc-Erweiterung < sup> 1 , mit der Sie den mittleren Operanden für den Bedingungsoperator auslassen können, also (zum Beispiel):

%Vor%

kann wie folgt geschrieben werden:

%Vor%

1 Trotz der '2.95.3' in der URL ist mir keine neuere Version der verlinkten Seite bekannt. Wenn jemand ist, bitte zögern Sie nicht, es hervorzuheben (oder bearbeiten Sie es).

    
Jerry Coffin 27.07.2010 20:00
quelle
0

es ist eine bequemere Version einer if-Anweisung, die für die Zuweisung verwendet wird

%Vor%

Dies ist grob gesagt, was es bedeutet, wenn das Bool ausgewertet wird, erhält es entweder das Wahrval oder das Falsche, abhängig vom Ergebnis, es ist einfacher als

zu sagen %Vor%     
Jesus Ramos 27.07.2010 19:58
quelle
0
%Vor%

Diese Funktion setzt x auf 0 ist x & lt; Wert, 1 sonst.

    
Dan 27.07.2010 19:53
quelle