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

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

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

Классы и иерархии, одарите советами - C++

04.11.2013, 20:35. Просмотров 336. Ответов 7
Метки нет (Все метки)

Создать класс четырехугольников, квадратов и прямоугольников. Создать из них иерархию. Определить функции печати, конструкторы и деструкторы, вычисление площади и периметра. Программа должна содержать меню, позволяющее осуществить проверку всех методов классов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2013, 20:35     Классы и иерархии, одарите советами
Посмотрите здесь:

Виртуальные базовые классы: какие требования предъявляются к иерархии наследования? - C++
класс на вершине иерархии определяет конструктор с параметрами. какие требования предъявляются к иерархии наследования?? ...

Создать иерархии наследования - C++
a) Создать иерархии наследования: воздушный транспорт, пассажирский транспорт - лайнер Boing 747 b) Создать иерархии ...

Постоение иерархии наследования - C++
нужно определить три класса: Expression — базовый класс иерархии, Number — для представления чисел и BinaryOperation — класс описывающий...

Цепочка иерархии классов - C++
Какой доступ будет в цепочке protected - public - protected? ...

Визуальное отображение иерархии - C++
Затык небольшой. class foo { protected: list<foo*>subfoo; // blah-blah-blah Каждый экземпляр класса может...

Трудности с организацией классовой иерархии - C++
Класс A использует данные класса B для выполнения своих методов, которые вызывает класс B. Что не хватает этому коду для того чтобы он...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
04.11.2013, 20:37     Классы и иерархии, одарите советами #2
Iliya, а что такое иерархия?
Iliya
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 10
04.11.2013, 20:47  [ТС]     Классы и иерархии, одарите советами #3
знаешь что такое исключение и наследование?
если да то иерархия это как раз типы классов, представляющие исключения
вот пример
class Excp { ... };
class popOnEmpty : public Excp { ... };
class pushOnFull : public Excp { ... };
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
04.11.2013, 20:49     Классы и иерархии, одарите советами #4
если да то иерархия это как раз типы классов, представляющие исключения
Что за глупоссть вы городите
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
04.11.2013, 20:49     Классы и иерархии, одарите советами #5
Iliya, круто, я не ожидал даже . тогда предлагаю сделать некий базовый класс, от которого будем делать потомков.
Yami
3 / 1 / 0
Регистрация: 02.11.2013
Сообщений: 21
04.11.2013, 20:52     Классы и иерархии, одарите советами #6
Четырехугольник - базовый класс. У него два потомка 1.Квадрат 2.Прямоугольник
Наверно так
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
04.11.2013, 21:02     Классы и иерархии, одарите советами #7
Прямоугольник и ромб - потомки четрёхугольника, квадрат - общий потомок ромба и прямоугольника. Четырёхугольник - фигура с четырьмя углами. Прямоугольник - фигура с четырьмя углами, все из которых прямые, противолежащие стороны такой фигуры попарно равны. Ромб - фигура с четырьмя углами, расположенными так, что диагонали, то есть отрезки, соединяющие не соседние углы, пересекаются под прямым углом, все стороны такой фигуры равны. Квадрат - фигура четырьмя углами, все из которых прямые и расположены так, что диагонали, то есть отрезки, соединяющие не соседние углы, пересекаются также под прямым углом. Отсюда видно, что прямоугольник и ромб - виды четырёхугольника, а квадрат - вид одновременно и прямоугольника, и ромба. Согласно семантике наследования отсюда следует, что классы прямоугольника и ромба являются потомками четырёхугольника и предками квадрата. Если ромб не нужен в задаче, то можно его и не описывать, но тогда данный фрагмент иерархии классов фигур будет не завершён.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2013, 21:03     Классы и иерархии, одарите советами
Еще ссылки по теме:

Затрудние в названии иерархии классов - C++
Здравствуйте камрады. Помогите обозвать иерархию классов, в голову ничего толкового не приходит. struct Card1 { std::string...

Оператор вывода для иерархии - C++
Добрый вечер всем, Имеется класс Person, от него отнаследован класс Student. Есть 2 оператора чтения из потока std::istream&...

организация разветвленной иерархии классов - C++
Цель: организовать разветвленную иерархию классов с применением абстрактных классов. Нужна помощь в разъяснении самого задания ...

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


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

Или воспользуйтесь поиском по форуму:
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
04.11.2013, 21:03     Классы и иерархии, одарите советами #8
А по вашему заданию

Как то так

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
29
30
31
32
33
34
35
36
class Figure
{
  protected:
            int a;
  public:
           Figure(int _a=0) : a(_a) {}
           virtual ~Figure() = 0;
           virtual void print() = 0;
           virtual int area() = 0;
           void setA(int _a) { a=_a; }
           int getA(){ return a; }
};
 
class Square : public Figure
{
  public:
          Square(int _a) : Figure(_a) {}
          ~Square(){}
          int area(){ return a*a; }
          int perimetr() { return a*4; }
          void print(){ cout << "Square A = " << a;}
};
 
class Rectangle : public Figure
{
   private: 
              int b;
   public:
            Rectangle(int _a=0, int _b=0) : Figure(_a), b(_b) {}
            ~Rectangle(){}
            int area(){ return a*b; }
            int perimetr() { return 2*(a+b); }
            void print(){ cout << "Rectangle A = " << a << " Rectangle A = " << b;}
            void setB(int _b) { b=_b; }
            int getB(){ return b; }
};
Yandex
Объявления
04.11.2013, 21:03     Классы и иерархии, одарите советами
Ответ Создать тему
Опции темы

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