C.1. C++ Operator Precedence

Table C.1 arranges the C++ operators according to their precedence (order of evaluation). Operators that appear at the top of the table evaluate earlier than those below. Operators at the same precedence level (between horizontal lines) evaluate left to right or right to left, according to their associativity.

Table C.1. C++ operator precedence
Operator Meaning Associativity Use
:: global scope right to left ::name
:: class, namespace scope left to right name::member
. direct member left to right object.member
-> indirect member left to right pointer->member
[] subscript left to right pointer[expr]
() function call left to right expr(arg)
() type construction left to right type(expr)
++ postfix increment left to ...

Get Navigating C++ and Object-Oriented Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.