c++シンボル優先度

2793 ワード

Precedence
Operator
Description
Associativity
1 ::
Scope resolution
Left-to-right
2 ++   --
Suffix/postfix increment and decrement ()
Function call []
Array subscripting .
Element selection by reference ->
Element selection through pointer typeid()
Run-time type information (see typeid) const_cast
Type cast (see const_cast) dynamic_cast
Type cast (see dynamic_cast) reinterpret_cast
Type cast (see explicit_cast) static_cast
Type cast (see static_cast)
3 ++   --
Prefix increment and decrement
Right-to-left +   -
Unary plus and minus !   ~
Logical NOT and bitwise NOT (type)
Type cast *
Indirection (dereference) &
Address-of sizeof
Size-of newnew[]
Dynamic memory allocation deletedelete[]
Dynamic memory deallocation
4 .*   ->*
Pointer to member
Left-to-right
5 *   /   %
Multiplication, division, and remainder/modulus[1]
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
16 =
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
17 throw
Throw operator (exceptions throwing)
18 ,
Comma
Left-to-right