C++ Built-in Operators, Precedence and Associativity
来源:互联网 发布:易语言盗号源码2016 编辑:程序博客网 时间:2024/06/06 19:14
The C++ language includes all C operators and adds several new operators. Operators specify an evaluation to be performed on one or more operands.
Operator precedence specifies the order of operations in expressions that contain more than one operator. Operator associativity specifies whether, in an expression that contains multiple operators with the same precedence, an operand is grouped with the one on its left or the one on its right. The following table shows the precedence and associativity of C++ operators (from highest to lowest precedence). Operators with the same precedence number have equal precedence unless another relationship is explicitly forced by parentheses.
C++ Operator Precedence and Associativity
Operator Description
Operator
Group 1 precedence, no associativity
Scope resolution
::
Group 2 precedence, left to right associativity
Member selection (object or pointer)
. or –>
Array subscript
[ ]
Function call
( )
Postfix increment
++
Postfix decrement
––
Type name
typeid( )
Constant type conversion
const_cast
Dynamic type conversion
dynamic_cast
Reinterpreted type conversion
reinterpret_cast
Static type conversion
static_cast
Group 3 precedence, right to left associativity
Size of object or type
sizeof
Prefix increment
++
Prefix decrement
––
One's complement
~
Logical not
!
Unary negation
-
Unary plus
+
Address-of
&
Indirection
*
Create object
new
Destroy object
delete
Cast
Cast: ()
Group 4 precedence, left to right associativity
Pointer-to-member (objects or pointers)
.* or –>*
Group 5 precedence, left to right associativity
Multiplication
*
Division
/
Modulus
%
Group 6 precedence, left to right associativity
Addition
+
Subtraction
–
Group 7 precedence, left to right associativity
Left shift
<<
Right shift
>>
Group 8 precedence, left to right associativity
Less than
<
Greater than
>
Less than or equal to
<=
Greater than or equal to
>=
Group 9 precedence, left to right associativity
Equality
==
Inequality
!=
Group 10 precedence left to right associativity
Bitwise AND
&
Group 11 precedence, left to right associativity
Bitwise exclusive OR
^
Group 12 precedence, left to right associativity
Bitwise inclusive OR
|
Group 13 precedence, left to right associativity
Logical AND
&&
Group 14 precedence, left to right associativity
Logical OR
||
Group 15 precedence, right to left associativity
Conditional
? :
Group 16 precedence, right to left associativity
Assignment
=
Multiplication assignment
*=
Division assignment
/=
Modulus assignment
%=
Addition assignment
+=
Subtraction assignment
–=
Left-shift assignment
<<=
Right-shift assignment
>>=
Bitwise AND assignment
&=
Bitwise inclusive OR assignment
|=
Bitwise exclusive OR assignment
^=
Group 17 precedence, right to left associativity
throw expression
throw
Group 18 precedence, left to right associativity
Comma
,
See Also
- C++ Built-in Operators, Precedence and Associativity
- C++ Operator Precedence and associativity
- 14.2.1 Operator precedence and associativity
- Precedence of operators
- 6.087 Practical Programming in C, lec2: Variables and datatypes, operators.
- [Built-in Functions] - C
- Cache Mapping and Associativity
- Cache Mapping and Associativity
- NAME_IN and COPY built-in
- OpenCL C Built-IN Functions
- 14.6.5 Prefix in- and decrement operators
- Operators and special characters in matlab
- system built-in routines cli() and sti()
- precedence and combination
- C + + operator precedence list
- C Perator Precedence Table
- [C++]C++ Operator Precedence
- Configuring file creation in Flash recovery area and order of Precedence (文档 ID 305810.1)
- 在SecureCRT中向linux上传和下载文件
- uva753(一般图匹配)
- NSDate NSDateFormatter 转化格式
- c++ Mutable
- error: command 'gcc' failed with exit status when installing psycopg2
- C++ Built-in Operators, Precedence and Associativity
- android开发桌面控件之液晶时钟
- 通俗的解释进程和线程
- Hololens 学习摘要及翻译记录 二 World coordinates
- Android学习日记(yzy):集成布局和滑动效果的实现
- 图片格式转换
- android 相对布局属性
- IOS 嵌入 u3d 的步骤
- centos6.8安装PHP 7.0.10