c++ 运算符重载透彻理解

来源:互联网 发布:html下拉框显示数据库 编辑:程序博客网 时间:2024/06/06 02:32

     运算符重载目的是使常用运算符能够运用在自定义类型对象上。

         根据运算符不同,有一元运算符重载和二元运算符重载。

 重载函数可以是类成员函数(非static成员函数,因为static成员函数只能操作static类型的变量上),友元函数和普通函数。

类成员函数可以减少参数变量,可以使用this指针。但是对于二元运算符类对象只能在运算符左侧。因此对于<<和>>只能使用友元函数来重载。而且如果重载发生级联,必须返回一般返回对象的常量引用。对于一元运算符如=等一般用类成员函数重载,因为友元破坏了类的封装性。经常为了方便,一个重载函数可以调用另外一个重载函数如== 与!=运算等,因为类成员函数使用与声明顺序无关。

0 0