logo
Posobie_Cpp

2.1.3. Условный оператор.

В языке С++ имеется оператор, который может использоваться вместо оператора if else. Это условный оператор и записывается как ?:. Общий формат оператора:

выражение1 ? выражение2 : выражение3;

Если выражение1 истинно, то значением всего условного оператора является выражение2, в противном случае - выражение3.

// пример

int c=a>b ? a : b; // если a>b, то с=a, иначе с=b

Как видим, условный оператор в данном примере приводит к тому же результату, что и выражение

int c;

if(a>b)

c=a;

else

c=b;

По сравнению с последовательностью if else, условный оператор более лаконичен, но и менее нагляден. Злоупотребление условным оператором может послужить «эффективным» способом сокрытия смысла программного кода.