Обычно '?' оператор используется в следующем виде:
A ? B : C
Однако в тех случаях, когда B = A, я видел следующую аббревиатуру
A ? : C
Это удивительно работает. Лучше ли оставить второй параметр в (стильный мудрый), или это вероятность того, что некоторые компиляторы не смогут справиться с этим?