/*
-------------------------------------------
ad:
x = 10.5 , y = 6.5
ae:
x = 4.44 , y = 2.11
ad + ae:
x = 14.94 , y = 8.61
x = 0 , y = 0
x = 0 , y = 0
-------------------------------------------
*/
//Move.h
#ifndef ___0_10_6__Move__
#define ___0_10_6__Move__
class Move {
private:
double x;
double y;
public:
Move(double a = 0, double b = 0);
void showmove() const;
Move add(constMove & m) const;
void reset(double a =0, double b =0);
};
#endif /* defined(___0_10_6__Move__) */
//Move.cpp
#include <iostream>
#include "Move.h"
Move::Move(double a,double b) {
x = a;
y = b;
}
void Move::showmove()const {
std::cout <<"x = " << x <<" , " << "y = " <<y << "\n";
}
Move Move::add(constMove & m) const {
Move n;
n.x = x + m.x;
n.y = y + m.y;
return n;
}
void Move::reset(double a,double b) {
x = a;
y = b;
}
//main.cpp
#include <iostream>
#include "Move.h"
int main() {
using std::cout;
Move ad(10.5,6.5);
Move ae(4.44,2.11);
Move sum;
cout << "ad:\n";
ad.showmove();
cout << "ae:\n";
ae.showmove();
sum = ad.add(ae);
cout <<"ad + ae:\n";
sum.showmove();
ad.reset();
ae.reset();
ad.showmove();
ae.showmove();
return 0;
}
c++ primer plus 第十章-编程题6
最新推荐文章于 2024-05-24 23:14:20 发布