![]()
/*★ 演算子のオーバーロード 前田 稔 ★*/
#include <iostream>
using namespace std;
class Vector2
{ public:
float X;
float Y;
Vector2()
{ X= 0.0f;
Y= 0.0f;
}
Vector2(float x, float y)
{ X= x;
Y= y;
}
|
Vector2 operator+(Vector2 obj)
{
Vector2 ans;
ans.X = this->X + obj.X;
ans.Y = this->Y + obj.Y;
return ans;
}
|
Vector2 operator-(Vector2 obj)
{
Vector2 ans;
ans.X = this->X - obj.X;
ans.Y = this->Y - obj.Y;
return ans;
}
};
|
void main()
{ Vector2 *vt1,*vt2,*vt3;
vt1= new Vector2(200,100);
vt2= new Vector2(20,10);
vt3= new Vector2(32.1f,23.4f);
cout << "X=" << vt1->X << " Y=" << vt1->Y << endl;
*vt1= *vt1 + *vt2;
cout << "X=" << vt1->X << " Y=" << vt1->Y << endl;
*vt1= *vt1 - *vt3;
cout << "X=" << vt1->X << " Y=" << vt1->Y << endl;
delete vt1;
delete vt2;
delete vt3;
}
|
| *vt1 = *vt1 + *vt2; |
| *vt1 += *vt2; |
|
*vt1 += *vt2; *vt1 -= *vt3; |
| Vector2 &operator+=(Vector2 obj) |
![]()