Да, это один из ряда операторов, которые в настоящее время существуют как специальные формы в компиляторе. Другие примеры включают ||
и &&
, которые оценивают только правую сторону в зависимости от степени увеличения левой стороны.
В настоящее время нет способа определить такого оператора самостоятельно (или при по крайней мере, официально не поддерживается, если все готово, чтобы повозиться с внутренностями компилятора, все возможно). Однако макросы - запланированные для следующей основной версии языка раку - позволят это.