test_figures.cpp 954 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include "Position.h"
  2. #include "Figure.h"
  3. #include "Pawn.h"
  4. #include "Horse.h"
  5. #include "Bishop.h"
  6. #include "Rook.h"
  7. #include "Queen.h"
  8. #include "King.h"
  9. #include <iostream>
  10. #include <vector>
  11. using namespace std;
  12. int main() {
  13. vector<Figure*> figures;
  14. Pawn p(Position('A', '1'), 'W');
  15. figures.push_back(&p);
  16. Horse h(Position('B', '1'), 'B');
  17. figures.push_back(&h);
  18. Bishop b(Position('C', '1'), 'W');
  19. figures.push_back(&b);
  20. Rook r(Position('D', '1'), 'W');
  21. figures.push_back(&r);
  22. Queen q(Position('E', '1'), 'W');
  23. figures.push_back(&q);
  24. King k(Position('F', '1'), 'B');
  25. figures.push_back(&k);
  26. vector<Position> moves;
  27. for (int i = 0; i < 6; i++) {
  28. moves = figures[i]->get_moves();
  29. cout << figures[i]->print() << ' ' << moves.size() << ' ';
  30. for(int j = 0; j < moves.size(); j++) {
  31. cout << moves[j] << ';';
  32. }
  33. cout << endl;
  34. }
  35. return 0;
  36. }