1、算数运算符
| 运算符 | 含义 |
|---|---|
| + | 加法 |
| - | 减法 |
| * | 乘法 |
| / | 除法 |
| % | 取余 |
| ++ | 自增运算符;++a:前置自增,先增加再使用;a++:后置自增,先使用后增加 |
| -- | 自减运算符;--a:前置自减,先减少再使用;a--:后置自减,先使用后减少 |
2、关系运算符
| 运算符 | 含义 |
|---|---|
| == | 等于 |
| != | 不等于 |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
3、逻辑运算符
| 运算符 | 含义 |
|---|---|
| && | 逻辑与 |
| || | 逻辑或 |
| ! | 逻辑非 |
4、位运算符
| 运算符 | 含义 |
|---|---|
| & | 按位与 |
| | | 按位或 |
| ^ | 按位异或 |
| ~ | 按位取反 |
| << | 左移 |
| >> | 右移 |
5、赋值运算符
| 运算符 | 含义 |
|---|---|
| = | 赋值 |
| += | 加法赋值 |
| -= | 减法赋值 |
| *= | 乘法赋值 |
| /= | 除法赋值 |
| %= | 取余赋值 |
| &= | 按位与赋值 |
| |= | 按位或赋值 |
| ^= | 按异或赋值 |
| <<= | 左移赋值 |
| >>= | 右移赋值 |
6、条件运算符
| 运算符 | 含义 |
|---|---|
?::条件运算符(Ternary Operator) |
语法:condition ? expr1 : expr2,如果 condition 为真,则返回 expr1,否则返回 expr2。 |
7、类型运算符
| 运算符 | 含义 |
|---|---|
| sizeof | 获取数据类型或对象的大小 |
| typeid | 获取类型信息(用于多态) |
| decltype | 用于获取表达式类型 |
8、指针运算符
| 运算符 | 含义 |
|---|---|
| * | 解引用,获取指针指向的值 |
| & | 取地址,获取变量的地址 |
9、逗号运算符
| 运算符 | 含义 |
|---|---|
| , | 用于在一个语句中依次执行多个表达式,返回最后一个表达式的值。 |
10、范围解析运算符
| 运算符 | 含义 |
|---|---|
| :: | 用于指定变量或函数的作用域,尤其是在类外部引用类的成员时 |
11、指针成员访问运算符
| 运算符 | 含义 |
|---|---|
| -> | 通过指针访问类或结构体成员 |
12、类型转换运算符
| 运算符 | 含义 |
|---|---|
| static_cast<type> | 静态类型转换 |
| dynamic_cast<type> | 动态类型转换(用于多态) |
| const_cast<type> | 去除或添加常量限定 |
| reinterpret_cast<type> | 重新解释指针类型 |