首页 > 技术资讯
C++运算符重载的总结
2018-02-27 01:36:13 浏览量:33602 来源:管理员
C++引入运算符重载的目的,主要是想让类对象也具有基本数据类型变量的运算操作功能;要实现类似的运算操作,就需要重载这些运算符;
int a,b;
a+b;对于对象:
Student s1,s2;
s1+s2 ?
要使得类对象可以进行运算操作,可以通过operator 来实现,其后跟相应的运算符;
例子中的operator++() 和 operator++(int) (这里的int用作区分2个运算符函数)
关于运算符的重载,可以有2种方式:
(1)通过类的成员函数实现;
(2)通过友元函数同样可以实现;(友元函数的实现,因为没有this指针,一般会比成员函数实现多一个对象的引用)
对于运算符重载,c++中的一些规定:
1 参数说明都是一些内部类型时,不能重载; eg: int * operator+ (int ,int *); //error
2 :: . .-> ?: .* # 这6个运算符不能重载;
3 () [] -> = 只能通过成员函数的形式实现重载;不能通过友元函数实现;
推荐课程