c++

c++运算符重载的规则是什么

小亿
84
2024-01-19 15:43:17
栏目: 编程语言
C++开发者专用服务器,限时0元免费领! 查看>>

C++运算符重载的规则如下:

  1. 不能重定义原有的运算符的优先级和结合性。
  2. 不能重载以下运算符:::(作用域解析运算符)、.(成员选择运算符)、.*(成员指针选择运算符)、?:(条件运算符)和sizeof(sizeof运算符)。
  3. 不能重载以下运算符的含义:&&(逻辑与)、||(逻辑或)和,(逗号)。
  4. 重载运算符必须至少有一个操作数是用户定义的类型,不能改变运算符的操作数数量。
  5. 重载运算符可以是成员函数或非成员函数,但是如果是非成员函数,至少有一个操作数必须是用户定义的类型。
  6. 如果重载为成员函数,则操作数数目减一,如果重载为非成员函数,则操作数数目不变。
  7. 不能修改运算符的操作数的语义。
  8. 重载为非成员函数时,参数个数应该与该运算符在所有操作数上的操作数个数相等,如果是成员函数,则参数个数比该运算符在所有操作数上的操作数个数少一个。
  9. 重载运算符不能改变其优先级和结合性。
  10. 重载的运算符必须保留其原始的基本意义,不应该对其进行过度的重载以避免造成困惑和不必要的复杂性。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:c++异或运算符的运算规则是什么

0
看了该问题的人还看了