Форум программистов, компьютерный форум CyberForum.ru

Одиночное наследование, иерархия классов "Шахматная фигура" - C++

Восстановить пароль Регистрация
 
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 114
11.06.2013, 10:57     Одиночное наследование, иерархия классов "Шахматная фигура" #1
Люди добрые помогите пожалуйста написать программу на с++.
Создать иерархию классов шахматная фигура - абстрактный класс, содержащий поле- цвет. создать-производные классы все фигуры, содержащие своё названием координаты позиции на доске. определить конструктор копирования, оператор присваивания через соответствующие функции базового класса . продемонстрировать работу классов
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2013, 10:57     Одиночное наследование, иерархия классов "Шахматная фигура"
Посмотрите здесь:

C++ Абстрактный базовый класс и множественное наследование (либо иерархия классов)
C++ Иерархия: класс "карта", "колода карт"
Наследование классов "Заявка", "Техническое задание", "Техническое предписание" C++
C++ Иерархия классов "люстра", "лампа"
C++ Иерархия классов "список"-"очередь", вызов метода через класс интерфейс
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
11.06.2013, 11:03     Одиночное наследование, иерархия классов "Шахматная фигура" #2
маня, что не получается?
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 114
11.06.2013, 11:35  [ТС]     Одиночное наследование, иерархия классов "Шахматная фигура" #3
да в принципе всё не получается. я в наследовании вообще ничего не понимаю

Добавлено через 3 минуты
вот что смогла
C++
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
 class Figure                    //класс «фигура»
  { protected:
    int hor;                      //позиция фигуры по горизонтали
    char vert;                    //позиция фигуры по вертикали
    int color;                     //цвет фигуры
    public:
        Figure(char x, int y, int z) //конструктор
         : vert(x), hor(y), color(z)
       {}
   };
  class Castle : public Figure         //класс ладья
  { public:
       Сastle(char x, int y, int z):
       Figure (x, y, z)               //конструктор
         {}
     int Move(char x, int y)         //функция, реализующая ход ладьи на поле [x y ]
      { if ( ((x == vert)
         && (y != hor))
         || ((x != vert)
        && (y == hor)))
        {
          hor = y;
          vert = x;
          return 1;
        }
       return 0;
      }
  };
Добавлено через 13 минут
Помогите кто-нибудь написать программу!

 Комментарий модератора 
маня, Вы научитесь пользоваться тегами для оформления своего кода?
kventin_zhuk
БНТУ ФИТР
 Аватар для kventin_zhuk
214 / 154 / 15
Регистрация: 26.12.2012
Сообщений: 382
11.06.2013, 12:06     Одиночное наследование, иерархия классов "Шахматная фигура" #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Figure
{
protected:
    int hor; //позиция фигуры по горизонтали
    char vert; //позиция фигуры по вертикали
    int color; //цвет фигуры
public:
    Figure(char x, int y, int z); //конструктор
    virtual int Move(int x, int y) abstract;
};
 
class Castle : public Figure //класс ладья
{
public:
    int Move(int x, int y);
};
Делаете класс Figure - в нем метод Move - помечаете как абстрактный. Далее делаете наследника от класса фигуры - и в каждом наследнике уже реализуете свой метод Move.

вот файл реализации
C++
1
2
3
4
5
6
7
8
9
10
Figure::Figure(char x, int y, int z): vert(x), hor(y), color(z)
{
    // реализация конструктора базового класса
}
 
int Castle::Move(int x, int y)
{
    // реализация метода move для класса ладьи
    return 0;
}
от класса Figure объектов создать нельзя - а вот от класса ладьи - уже можно
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 114
11.06.2013, 12:09  [ТС]     Одиночное наследование, иерархия классов "Шахматная фигура" #5
А вы бы не могли полностью написать программу? Пожалуйста!
Yandex
Объявления
11.06.2013, 12:09     Одиночное наследование, иерархия классов "Шахматная фигура"
Ответ Создать тему
Опции темы

Текущее время: 14:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru