1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| #include <vector>
#include <iostream>
#includ <utility>
#include <deque>
using namespace std;
class Coup {
private:
typedef pair<int,int> Position; //position d'un pion sur un plateau
typedef pair<Position,Position> Positions; // couple position de départ et position d'arrivée
pair<Positions,bool> c;// coup est représenté par une position de départ et une position d'arrivée plus un bool dessus/dessous
typedef vector<c> Listedescoups;// vecteur liste des coups
bool dessus;
public:
//constructeurs
Coup() {}
Coup(int lignedepart, int coldepart, int lignearrivee, int colarrivee, bool dessus) ;
c(Positions(Position(lignedepart, coldepart), Position(lignearrivee, colarrivee)), dessus) {}
//selcteurs et accesseurs
int getlignedepart() const {
return c.first.first.first;
}
int getcoldepart() const {
return c.first.first.second;
}
int getlignearrivee() const {
return c.first.second.first;
}
int getcolarrivee() const {
return c.first.second.second;
}
friend ostream& operator<<(ostream& o, const Coup& c);
friend istream& operator>>(istream& i, Coup& c);
}; |
Partager