C++

The following table lists the precedence and associativity of C++ operators. Operators are listed top to bottom, in descending precedence.

Precedence Operator Description Associativity
1 :: Scope resolution Left-to-right
2 ++  -- Suffix/postfix increment and decrement
type()type{} Function-style type cast
() Function call
[] Array subscripting
. Element selection by reference
-> Element selection through pointer
3 ++  -- Prefix increment and decrement Right-to-left
+  - Unary plus and minus
!  ~ Logical NOT and bitwise NOT
(type) C-style type cast
* Indirection (dereference)
& Address-of
sizeof Size-of
new,new[] Dynamic memory allocation
delete,delete[] Dynamic memory deallocation
4 .*  ->* Pointer to member Left-to-right
5 *  /  % Multiplication, division, and remainder
6 +  - Addition and subtraction
7 <<  >> Bitwise left shift and right shift
8 <  <= For relational operators < and ≤ respectively
>  >= For relational operators > and ≥ respectively
9 ==  != For relational = and ≠ respectively
10 & Bitwise AND
11 ^ Bitwise XOR (exclusive or)
12 | Bitwise OR (inclusive or)
13 && Logical AND
14 || Logical OR
15 ?: Ternary conditional Right-to-left
= Direct assignment (provided by default for C++ classes)
+=  -= Assignment by sum and difference
*=  /=  %= Assignment by product, quotient, and remainder
<<=  >>= Assignment by bitwise left shift and right shift
&=  ^=  |= Assignment by bitwise AND, XOR, and OR
16 throw Throw operator (for exceptions)
17 , Comma Left-to-right
原文地址:https://www.cnblogs.com/blfshiye/p/4299933.html