Bootstrap

C++ Primer 运算符优先级表

欢迎阅读我的 【C++Primer】专栏

专栏简介:本专栏主要面向C++初学者,解释C++的一些基本概念和基础语言特性,涉及C++标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级程序设计技术。希望对读者有帮助!

在这里插入图片描述
在这里插入图片描述

4.12运算符优先级表

表4.4:运算符优先级

结合律运算符功能用法
::全局作用域::name
::类作用域class::name
::命名空间作用域namespace::name
.成员选择object.member
->成员选择pointer->member
[]下标expr[exp]
()函数调用name(expr_list)
()类型构造type(expr_list)
++后置递增运算ivalue++
后置递减运算ivalue–
typeid类型IDtypeid(type)
typeid运行时类型IDtypeid
explicit cast类型转换cast_name(expr)
++前置递增运算++lvalue
–前置递减运算–lvalue
~位求反~expr
!逻辑非!expr
-一元负号-expr
+一元正号+expr
*解引用*expr
&取地址&lvalue
()类型转换(type)expr
sizeof对象的大小sizeofexpr
sizeof类型的大小sizeof(type)
sizeof…参数包的大小sizeof…(name)
new创建对象new type
new[]创建数组new type[size]
delete释放对象delete expr
delete[]释放数组delete[]expr
noexcept能否抛出异常noexcept(expr)
->*指向成员选择的指针ptr->*ptr_to_member
.*指向成员选择的指针obj.*ptr_to_member
*乘法expr+expr
/除法expr/expr
%取模(取余)expr%expr
+加法expr十expr
-减法expr-expr
<<向左移位expr<<expr
>>向右移位expr>>expr
<小于expr<expr
<小于等于expr<=expr
>大于expr>expr
>大于等于expr>==expr
==相等expr=expr
!=不相等expr!=expr
&位与expr && expr
^位异或expr^expr
?:条件expr?expr:expr
*=,/=,%=复合赋值lvalue += expr 等
+=,=+
<<= ,>>=
&=,|=,^=
throw抛出异常throw expr
,逗号expr, expr
;