本文主要总结C++中类的重载运算符用法。类的重载运算符可以用于两个类相加或减之类,也就是算术运算符(+,-,*,/,%,>,<,=,!=)和其它一些已存在的运算符重载(new,[])等都可以通过重载运算符函数operatorOP()进行重载。其中OP为重载运算符(比如运算符加法+),可以在重载函数operatorOP(){}中定义要实现的方法,下面将展示加法+和乘法的运算符实例。
注意:
a1 赋值操作运算符不能被继承;
a2 算数运算符可以被继承;
一、重载函数(加法+和乘法*)原理
1.1类的加法(+)运算符重载
类加法运算符重载原理如下:
classA+classB==classA.operator+(classB);
当两个类相加时,相当于调用上述重载函数。
1.2类的乘法(*)运算符重载
其中乘法需要通过友元函数来实现,不过博主这个例子没用友元函数,是用成员函数实现。当一个整数跟类相乘即classB==10*classA,相当于调用如下重载函数:
classB==classA.operator*(10,classA);
本文探讨了C++中如何重载加法(+)和乘法(*)运算符。通过类的成员函数实现加法重载,而乘法重载可通过成员或友元函数完成。文章提供了完整实例代码,包括在头文件和源文件中的实现,并展示了调用这些重载运算符的结果。
最低0.47元/天 解锁文章
762

被折叠的 条评论
为什么被折叠?



