Тернарный оператор должен что-то вернуть. Типичное использование выглядит так:
int x = (a > b) ? a : b;
Если вы попробуете что-то вроде
a + b;
, компилятор будет жаловаться.
(a > b) ? a - b : b - a;
в основном ярлык для «a-b» или «b-a», которые сами по себе не являются законными.