Читаю:
Все операторы сохраняют свой приоритет и ассоциативность по умолчанию, и это не может быть изменено
Берем бинарный плюс (ассоциативность слева направо):
const ClassName operator+(const ClassName &) const;
first + second + third; => first.operator+(second.operator+(third));
Получается, что, если явно скобками не обозначить, то ассоциативность всегда будет справа налево, или я не прав?
Или всё-таки внутренне это будет так выглядеть:
first.operator+(second).operator+(third)
?
В сети не нашёл ответа.
P.S.: Первый вариант [first.operator+(second.operator+(third))] есть в книге Праты.