返回值类型 operator 运算符名称 (参数列表)
{
...//函数体
}
1 #include<iostream>
2 using namespace std;
3 class A
4 {
5 private:
6 int _x;
7 int _y;
8 public:
9 A(int x=0,int y=0):_x(x),_y(y){}
10 void show() const; //输出数据
11 A operator+(const A& a) const; //重载"+"运算符
12 A operator-(const A& a) const; //重载"-"运算符
13 };
14 void A::show() const //show()函数的实现
15 {
16 cout<<"(_x,_y)="<<"("<<_x<<","<<_y<<")"<<endl;
17 }
18 A A::operator+(const A& a) const //重载"+"运算符的实现
19 {
20 return A(_x+a._x,_y+a._y);
21 }
22 A A::operator-(const A& a) const //重载"-"运算符的实现
23 {
24 return A(_x-a._x,_y-a._y);
25 }
26 int main()
27 {
28 A a1(1,2);
29 A a2(4,5);
30 A a;
31 cout<<"a1: ";
32 a1.show();
33 cout<<"a2: ";
34 a2.show();
35 a=a1+a2; //实现两个对象相加
36 cout<<"a: ";
37 a.show();
38 a=a1-a2; //实现两个对象相减
39 cout<<"a: ";
40 a.show();
41 return 0;
42 }
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。