Die meisten Programmiersprachen, wie C++, sind rekursiv in der Reihenfolge, in der Operationen ausgeführt werden (ich mache keine Implikation darüber, wie der Code tatsächlich vom Compiler hier implementiert wird). Zusammengesetzte Operationen, die sich aus beliebigen gut definierten Operationen zusammensetzen, sind selbst wohldefiniert, da jede Operation auf einer Last-in-first-out-Basis ausgeführt wird.
Post-Zuwachs gibt der Wert der Variablen vor es Inkrementieren erhöht wird, so dass der return
Operation diesen Wert recieves. Es muss keine spezielle Definition dieses Verhaltens gemacht werden.
Gute Erklärung, danke. – patros
Wenn 'int' kein' int' ist, sondern ein 'MyClassWithOverloadedOperators', dann liegen Sie einfach falsch. –
@Pavel: Ich stimme nicht zu. Eine Klasse mit einem überladenen Post-Inkrement-Operator, der die richtige Post-Inkrement-Semantik nicht implementiert, ist falsch. – Void