Порядок действий в C++

177
10 августа 2021, 03:50

Есть код:

SomeObject.DoA().DoB().DoC();

В каком порядке выполнятся функции DoA(), DoB(), DoC()?

Answer 1

Более формально можно сказать и так. Оператор . имеет левую ассоциативность. Поэтому выражение выше можно рассматривать так:

((SomeObject.DoA()).DoB()).DoC();

тут вроде вопросов про порядок уже никаких не возникает.

Answer 2

Просто по логике: к чему применяется f() в a.f()? К объекту a. К чему применяется DoC()? к результату DoB(). Как его получить, сначала вызвав DoC()? Никак. Значит, DoB() - предшествует DoC(). То же самое относится и к порядку DoA() и DoB().

READ ALSO
Как отключить родной datepicker в firefox?

Как отключить родной datepicker в firefox?

Использую datepicker от JqueryВ браузере firefox При нажатии на <input type="date"> отражается сразу два datepicker:

132
Как отправить на печать страницу?

Как отправить на печать страницу?

Использовал для печати страницы windowprint(), но она печатает ту страницу на которой находится данный код (например a

228