Operators and separators
Operators and separators of §1.6; precedence and associativity: §5.2; user-defined operators: §5.3.
+ | Operator or separator |
- | Operator or separator |
* | Operator or separator |
/ | Operator or separator |
% | Operator or separator |
** | Precedence 12, right |
+% | Operator or separator |
-% | Operator or separator |
*% | Operator or separator |
+| | Operator or separator |
-| | Operator or separator |
*| | Operator or separator |
& | Precedence 8, left |
| | Operator or separator |
^ | Precedence 7, left |
~ | Operator or separator |
<< | Precedence 9, left |
>> | Precedence 9, left |
&& | Precedence 3, left |
|| | Operator or separator |
! | Operator or separator |
== | Precedence 4, none (a < b < c is an error) |
!= | Precedence 4, none (a < b < c is an error) |
< | Precedence 4, none (a < b < c is an error) |
<= | Precedence 4, none (a < b < c is an error) |
> | Precedence 4, none (a < b < c is an error) |
>= | Precedence 4, none (a < b < c is an error) |
<=> | Precedence 4, none (a < b < c is an error) |
= | Operator or separator |
+= | Operator or separator |
-= | Operator or separator |
*= | Operator or separator |
/= | Operator or separator |
%= | Operator or separator |
&= | Operator or separator |
|= | Operator or separator |
^= | Operator or separator |
<<= | Operator or separator |
>>= | Operator or separator |
-> | Precedence −1, left |
?-> | Precedence −1, left |
~> | Precedence −1, left |
!> | Precedence −1, left |
|> | Operator or separator |
=> | Precedence −2, right |
?? | Precedence 1, right |
?. | Operator or separator |
? | Operator or separator |
.. | Precedence 5, none |
..= | Precedence 5, none |
. | Operator or separator |
, | Operator or separator |
: | Operator or separator |
; | Operator or separator |
@ | Operator or separator |
# | Operator or separator |
( | Operator or separator |
) | Operator or separator |
[ | Operator or separator |
] | Operator or separator |
{ | Operator or separator |
} | Operator or separator |
&var | Precedence 14, prefix |