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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 115
#1

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

11.06.2013, 10:57. Просмотров 479. Ответов 4
Метки нет (Все метки)

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

Иерархия классов "список"-"очередь", вызов метода через класс интерфейс - C++
Есть небольшая иерархия классов, контейнер (список) для хранения объектов каждого класса, контейнер (очередь) с указателями на объект...

Иерархия классов "люстра", "лампа" - C++
Реализовать и протестировать иерархию классов (родительский и производные) : Настольная лампа с автоматическим регулятором освещенности ...

Иерархия классов "Студент, преподаватель, персона, завкафедрой" - C++
Помогите создать иерархию классов ; Студент,преподаватель,персона,завкафедрой; на языке C++

Наследование классов "Заявка", "Техническое задание", "Техническое предписание" - C++
Создать базовый класс ТЕХНИЧЕСКОЕ ЗАДАНИЕ со свойствами: номер, описание и методами: вывести всю информацию об объекте, добавить описание....

Иерархия классов "Точка-Отрезок-Треугольник" - C++
Создайте иерархию классов Точка-Отрезок-Треугольник. Класс Point уже дан, мучаюсь с классом Line. После динамического объявления объекта...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Пaтрик
415 / 390 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
11.06.2013, 11:03 #2
маня, что не получается?
0
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 115
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 минут
Помогите кто-нибудь написать программу!

 Комментарий модератора 
маня, Вы научитесь пользоваться тегами для оформления своего кода?
0
kventin_zhuk
БНТУ ФИТР
215 / 155 / 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 объектов создать нельзя - а вот от класса ладьи - уже можно
0
маня
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 115
11.06.2013, 12:09  [ТС] #5
А вы бы не могли полностью написать программу? Пожалуйста!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2013, 12:09
Привет! Вот еще темы с ответами:

Ошибка "no matching function for call to." / наследование классов - C++
Доброго времени суток. В качестве некоторой предыстории скажу, что начать изучать С++ довелось совсем недавно, и в процессе возникла...

Наследование классов "Языки программирования" - C++
Создать иерархию классов (Ассемблер, C, С++, язык программирования, язык программирования высокого уровня). Что можно описать в функциях...

Иерархия классов "Структура - Список - Кольцевой Двусвязный список" - C++
Неделю назад получил задание и срок выполнения до конца мая. Разработка иерархии классов. Структура - Список - Кольцевой Двусвязный...

Создать иерархию классов "Фирма", "Бухгалтер", "Сотрудник", "Зарплата" - C++
Само по себе понятие "зарплата" не особенно конкретное: оно включает и почасовую, и ставочную зарплату, и комиссионные, и процент с продаж....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.06.2013, 12:09
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru