| 优先级 | 运算符 | 说明 | 结合性 |
|---|---|---|---|
| 1 | :: | 范围解析 | 自左向右 |
| 2 | ++ — | 后缀自增/后缀自减 | |
| () | 括号 | ||
| [] | 数组下标 | ||
| . | 成员选择(对象) | ||
| −> | 成员选择(指针) | ||
| 3 | ++ — | 前缀自增/前缀自减 | 自右向左 |
| + − | 加/减 | ||
| ! ~ | 逻辑非/按位取反 | ||
| (type) | 强制类型转换 | ||
| * | 取指针指向的值 | ||
| & | 某某的地址 | ||
| sizeof | 某某的大小 | ||
| new, new[] | 动态内存分配/动态数组内存分配 | ||
| delete, delete[] | 动态内存释放/动态数组内存释放 | ||
| 4 | . -> | 成员对象选择/成员指针选择 | 自左向右 |
| 5 | * / % | 乘法/除法/取余 | |
| 6 | + − | 加号/减号 | |
| 7 | << >> | 位左移/位右移 | |
| 8 | < <= | 小于/小于等于 | |
| > >= | 大于/大于等于 | ||
| 9 | == != | 等于/不等于 | |
| 10 | & | 按位与 | |
| 11 | ^ | 按位异或 | |
| 12 | | | 按位或 | |
| 13 | && | 与运算 | |
| 14 | || | 或运算 | |
| 15 | ?: | 三目运算符 | 自右向左 |
| 16 | = | 赋值 | |
| += −= | 相加后赋值/相减后赋值 | ||
| *= /= %= | 相乘后赋值/相除后赋值/取余后赋值 | ||
| <<= >>= | 位左移赋值/位右移赋值 | ||
| &= ^= |= | 位与运算后赋值/位异或运算后赋值/位或运算后赋值 | ||
| 17 | throw | 抛出异常 | |
| 18 | , | 逗号 | 自左向右 |
