C++操作符重载

来源:互联网 发布:私有域名解析软件 编辑:程序博客网 时间:2024/05/18 01:21

定义

操作符重载就是把操作符(比如’+,-,*,/’这些运算符)赋于新的意义。

调用方式

  • 调用类中的操作符重载函数的方法
  • 调用友元或独立的操作符重载函数的方法

重载限制

  • 并不是所有的操作符都能被重载,除了. ,.* ,:: ,? : ,sizeof,typeid这几个运算符不能被重载,其他运算符都能被重载
  • 重载不能改变运算符用于内置类型时的含义,程序员不能改变运算符+用于两个int型时的含义
  • 运算符函数的参数至少有一个必须是类的对象或者类的对象的引用。这种规定可以防止程序员运用运算符改变内置类型的含义
  • 重载不能改变运算符的优先级
  • 重载不能改变运算符的结合律
  • 重载不能改变运算符操作数的个数。比如+需要两个操作数,则重载的+也需要有两个操作数