IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ 学习笔记 运算符优先级 -> 正文阅读

[C++知识库]C++ 学习笔记 运算符优先级

原则:

单目运算符》双目算符》三目运算符;

算数运算符》关系运算符》逻辑运算

移位运算符》关系运算符》位逻辑运算符

括号最高,逗号最低,赋值和复合赋值仅高于逗号运算符

右结合性:先计算右边再计算左边:三目和赋值运算符

左侧结合性:先计算左边再计算右边:其余运算符

一,赋值运算符

?用于修改对象的值。

运算符名语法可重载
加法赋值a += b
简单赋值a =? b
减法赋值a -= b
乘法赋值a *= b
除法赋值a /= b
取模赋值a?%= b
逐位与赋值a &= b
逐位或赋值a |= b
逐位异或赋值a ^= b
逐位左移赋值a <<= b
逐位右移赋值a >>= b

?

?二.自增/自减运算符

自增/自减运算符增加或减小对象的值

运算符名语法可重载
前自减--a
后自增a++
前自增++a
后自减a--

三.算术运算符

返回特定算术运算的结果

运算符名语法可重载
一元减-a
一元加+a
加法a + b
减法a - b
乘法a * b
除法a / b
a?% b
逐位非~a
逐位与a & b
逐位或a | b
逐位异或a ^ b
逐位左移a << b
逐位右移a >> b

四.逻辑运算符

返回布尔运算的结构(关键词形式(and、or、not)和符号形式(&&、||、!)的使用可以互相代替

运算符名语法可重载
a and b

a?&&?b

not a

!a

?是
同或a or b

a?||?b

五.比较运算符

比较参数

运算符名语法可重载
不等于a?!= b
等于a == b
小于a < b
大于a > b
小于或等于a <= b
大于或等于a >= b
三路比较(C++20)a <=> b

六.成员访问运算符

运算符名语法可重载
间接寻址(由?a?所指向的变量)*a
数组下标a[b]
取地址&a
对象的成员a.b
指针的成员a->b
对象的成员指针a.*b
指针的成员指针a->*b

七.其他运算符

运算符名语法可重载
逗号a, b
函数调用a(a1, a2)
条件a?? b?: c

八.运算符优先级

优先级

运算符

描述

结合性

1

::

作用域解析

从左到右

2

a++???a--

后缀自增与自减

type()???type{}

函数风格转型

a()

函数调用

a[]

下标

.???->

成员访问

3

++a???--a

前缀自增与自减

从右到左

+a???-a

一元加与减

!???~

逻辑非和逐位非

(type)

c风格转型

*a

间接(解引用)

&a

取止

sizeof

取大小

co_await

await 表达式?(C++20)

new???new[]

动态内存分配

delete???delete[]

动态内存分配

4

.*???->*

成员指针

从左到右

5

a*b???a/b???a%b

乘法,除法,取余

6

a+b???a-b

加法,减法

7

<<???>>

逐位左移与右移

8

<=>

三路比较运算(C++20 起)

9

<???<=

分别为 < 与 ≤ 的关系运算符

>???>=

分别为 > 与 ≥ 的关系运算符

10

==???!=

分别为 = 与 ≠ 的关系运算符

11

a&b

逐位与

12

^

逐位异域(互斥或)

13

|

逐位或(可兼或)

14

&&

逻辑与

15

||

逻辑或

16

a?b:c

三元条件

从右到左

throw

throw运算

co_yield

yield 表达式?(C++20)

=

直接赋值(C++ 类默认提供)

+=???-=

以和及差复合赋值

*=???/=???%=

以积、商及余数复合赋值

<<=???>>=

以逐位左移及右移复合赋值

&=???^=???|=

以逐位与、异或及或复合赋值

17

,

逗号

从左到右

?

特殊运算符

static_cast 转换一个类型为另一相关类型

dynamic_cast 在继承层级中转换

const_cast 添加或移除 cv 限定符

reinterpret_cast 转换类型到无关类型

C 风格转型 以 static_cast 、 const_cast 及 reinterpret_cast 的混合转换一个类型到另一类型

new 创建有动态存储期的对象

delete 销毁先前由 new 表达式创建的对象,并释放其所拥有的内存区域

sizeof 查询类型的大小

sizeof... 查询形参包的大小(C++11 起)

typeid 查询类型的类型信息

noexcept 查询表达式是否能抛出异常(C++11 起)

?

alignof 查询类型的对齐要求(C++11 起)

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-22 13:57:27  更:2021-07-22 13:59:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/2 1:22:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码