c++ 能重载的操作符有那些
时间: 2023-01-11 12:55:36 浏览: 78
C++中可以重载的操作符有以下一些:
- 算术运算符:+、-、*、/、%
- 关系运算符:==、!=、>、<、>=、<=
- 逻辑运算符:&&、||、!
- 位运算符:&、|、^、~、<<、>>
- 赋值运算符:=、+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=
- 下标运算符:[]
- 前缀和后缀运算符:++、--
- 函数调用运算符:()
- 逗号运算符:,
- 三目运算符:? :
- 新增的 C++11 运算符:new、new[]、delete、delete[]
注意: 不能重载的操作符包括: .,.*,::,?:,sizeof,typeid,alignof,noexcept,const_cast,dynamic_cast,reinterpret_cast,static_cast
相关问题
c++ 重载操作符有那些
重载操作符是指重新定义C++中已有运算符的含义。常见的重载操作符有:
1. 算术运算符: +, -, *, /, %
2. 关系运算符: ==, !=, >, <, >=, <=
3. 逻辑运算符: &&, ||, !
4. 赋值运算符: =
5. 位运算符: &, |, ^, ~, <<, >>
6. 自增/自减运算符: ++, --
7. 成员访问运算符: ->, .
8. 下标运算符: [ ]
9. 函数调用运算符: ( )
10. 转型运算符: (type)
11. new 和 delete 运算符: new, delete, new[], delete[]
另外还有三个特殊的运算符是可以被重载的:
1. 复合赋值运算符: +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=
2. 串联运算符: <<, >>
3. 逗号运算符: ,
需要注意的是所有运算符重载都需要在类内部进行,且实现的时候可能需要使用特殊的关键字来实现,如 friend 和 operator.
c++不能重载的操作符
在 C++ 中,有一些操作符是不能被重载的,例如:
1. `.`:成员选择操作符。
2. `.*`:成员指针选择操作符。
3. `::`:作用域解析操作符。
4. `?:`:条件运算符。
5. `sizeof`:求大小运算符。
6. `typeid`:类型识别运算符。
这些操作符的含义已经在 C++ 中定义好了,不能被重载改变。