C++如何重载加法运算符?
3 回答
SMILET
TA贡献1796条经验 获得超4个赞
#include <iostream>
using namespace std;
class Test
{
public:
Test(int a = 0)
{
Test::a = a;
}
friend Test operator +(Test&,Test&);
friend Test& operator ++(Test&);
public:
int a;
};
Test operator +(Test& temp1,Test& temp2)//+运算符重载函数
{
//cout<<temp1.a<<"|"<<temp2.a<<endl;//在这里可以观察传递过来的引用对象的成员分量
Test result(temp1.a+temp2.a);
return result;
}
Test& operator ++(Test& temp)//++运算符重载函数
{
temp.a++;
return temp;
}
int main()
{
Test a(100);
Test c=a+a;
cout<<c.a<<endl;
c++;
cout<<c.a<<endl;
system("pause");
}
在例子中,我们对于自定义类Test来说,重载了加运算符与自动递增运算符,重载的运算符完成了同类型对象的加运算和递增运算过程。
婷婷同学_
TA贡献1844条经验 获得超8个赞
应该这样可以吧,
int operator + (const T & t1,T & t2) //T是数据类型
{
return t1?t2;//?表示你要的运算方式
}
- 3 回答
- 0 关注
- 718 浏览
添加回答
举报
0/150
提交
取消