Move.h
#ifndef MOVE_H_INCLUDED
#define MOVE_H_INCLUDED
class Move
{
private:
double x;
double y;
public:
Move(double a=0,double b=0);
void showmove() const;
Move add(const Move & m) const;
void reset(double a=0,double b=0);
};
#endif // MOVE_H_INCLUDED
Move.cpp
#include "Move.h"
#include <iostream>
Move::Move(double a,double b)
{
x=a;
y=b;
}
void Move::showmove() const
{
using namespace std;
cout<<"x="<<x<<endl;
cout<<"y="<<y<<endl;
cout<<endl;
}
Move Move::add(const Move & m) const
{
Move temp;
temp.x=x+m.x;
temp.y=y+m.y;
return temp;
}
void Move::reset(double a,double b)
{
x=a;
y=b;
}
main.cpp
#include "Move.h"
#include <iostream>
int main(void)
{
using std::cout;
cout<<"# m1\n";
Move m1(30,15);
m1.showmove();
m1.reset(20,10);
m1.showmove();
cout<<"# m2\n";
Move m2;
m2.showmove();
m2.reset(25,25);
m2.showmove();
cout<<"# m3\n";
Move m3=m1.add(m2);
m3.showmove();
return 0;
}