C++操作符的优先级

 

C++操作符的优先级


C++操作符的优先级

操作符及其结合性

功能

用法

L
L
L
::
::
::
全局作用域
类作用域
名字空间作用域
::name
class::name
namespace::name
L
L
L
L
L
.
->
[]
()
()
成员选择
成员选择
下标
函数调用
类型构造
object.member
pointer->member
variable[expr]
name(expr_list)
type(expr_list)
R
R
R
R
R
++
--
typeid
typeid
显示强制类型转换
后自增操作
后自减操作
类型ID
运行时类型ID
类型转换
lvalue++
lvalue--
typeid(type)
typeid(expr)
cast_name<type>(expr)
R
R
R
R
R
R
R
R
R
R
R
R
R
R
sizeof
sizeof
++
--
~
!
-
+
*
&
()
new
delete
delete[]
对象的大小
类型的大小
前自增操作
前自减操作
位求反
逻辑非
一元负号
一元正号
解引用
取地址
类型转换
创建对象
释放对象
释放数组
sizeof expr
sizeof(type)
++lvalue
--lvalue
~expr
!expr
-expr
+expr
*expr
&expr
(type)expr
new type
delete expr
delete []expr
L
L
->*
.*
指向成员操作的指针
指向成员操作的指针
ptr->*ptr_to_member
obj.*ptr_to_member
L
L
L
*
/
%
乘法
除法
求模(求余)
expr * expr
expr / expr
expr % expr
L
L
+
-
加法
减法
expr + expr
expr - expr
L
L
<<
>>
位左移
位右移
expr << expr
expr >> expr
L
L
L
L
<
<=
>
>=
小于
小于或等于
大于
大于或等于
expr < expr
expr <= expr
expr > expr
expr >= expr
L
R
==
!=
相等
不等
Expr == expr
Expr != expr
R & 位与 Expr & expr
R ^ 位异或 Expr ^ expr
R | 位或 Expr | expr
R && 逻辑与 Expr && expr
R || 逻辑或 Expr || expr
R ?: 条件操作 Expr ? expr : expr
R
R
R
R
R
=
*=,/=,%=
+=,-=
<<=,>>=
&=,|=,^=
赋值操作
符合赋值操作

Lvalue= expr
Lvalue+= expr
……

R throw 抛出异常 Throw expr
L , 逗号 Expr, expr
原文地址:https://www.cnblogs.com/yeye518/p/2231614.html