C++操作符的优先级

来源:互联网 发布:家庭农场管理软件源码 编辑:程序博客网 时间:2024/05/18 20:53

说明:表中以双横线分割成不同的段,每段内各个操作符的优先级相同,且都高于后面各段中的操作符。

操作符的优先级

操作符及其结合性

功能

用法

L

L

L

::

::

::

全局作用域

类作用域

名字空间作用域

:: name

calss :: 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

L

==

!=

相等

不等

Expr == expr

Expr != expr

L

&

位与

Expr & expr

L

^

位异或

Expr ^ expr

L

|

位或

Expr | expr

L

&&

逻辑与

Expr && expr

L

||

逻辑或

Expr || expr

R

? :

条件操作

Expr ? expr : expr

R

R

R

R

R

=

*= , /= , %=,

+= , -=,

<<= , >>= ,

&= , |= , ^=

赋值操作

复合赋值操作

Lvalue = expr

Lvalue += expr等等

R

Throw

抛出异常

Throw expr

L

,

逗号

Expr, expr

 

此表为本人从C++Primer上的摘录下,在word上辛苦制作而成,希望大家有什么新发现也分享出来,大家共同学习共同进步……


——桑海整理

原创粉丝点击