Я создаю игру «Морской бой» для финального проекта, и у меня возникают некоторые трудности с созданием производных классов. Для игры хиты не имеют значения, просто чтобы было проще. Как я могу создать разные классы для эффективного использования наследования или как родительский класс (например, Ship) и дочерний класс (например, Carrier) имеют одинаковые методы и свойства?
Обновление: здесь текущий код у меня есть для моего .h файла. Самая большая проблема, с которой я столкнулся, заключается в том, что я должен использовать наследование, но не знаю, как сделать производные классы уникальными.
class Ship{
private:
int x1, x2, y1, y2; // Position of the ends of the ship
int size; // Size of the ship
int hits; // Amount of hits the ship can take
//int damage[]; // Damage taken
public:
Ship(); // Default constructor
Ship(int x1, int y1, int x2, int y2); // Parameterized constructor
int getSize() const;
void setSize(const int& newSize);
int getHits() const;
void setHits(const int& newHits);
~Ship(); // Destructor
};
class Battleship: public Ship{
private:
public:
void setSize(int newSize);
int getSize() const;
void setHits(int newHits);
int getHits() const;
};
class Cruiser: public Ship{
private:
public:
void setSize(int newSize);
int getSize() const;
void setHits(int newHits);
int getHits() const;
};
class Submarine: public Ship{
private:
public:
void setSize(int newSize);
int getSize() const;
void setHits(int newHits);
int getHits() const;
};
class Destroyer: public Ship{
private:
public:
void setSize(int newSize);
int getSize() const;
void setHits(int newHits);
int getHits() const;
};