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

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

Войти
Регистрация
Восстановить пароль
 
ardos
-133 / 7 / 0
Регистрация: 24.02.2013
Сообщений: 234
#1

Виртуальные функции: создание фабрики объектов для множества фигур - C++

14.05.2013, 14:11. Просмотров 504. Ответов 1
Метки нет (Все метки)

C++,консольное приложение.Задание на использование виртуальных функций.Задание подразумевает создание фабрики объектов для всех 7 фигур(Треугольник,квадрат,прямоугольник,параллелограмм,трапе ция,шестиугольник,восьмиугольник) выбор 2-х из них ПРЯМОУГОЛЬНИК,ТРАПЕЦИЯ и применение написанных только для этих двух классов функций класса Operation.

класс operation

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Operation
{ //Класс, инкапсулирующий методы обработки объектов  классов
public:
    void Compare(Shape* s1, Shape* s2)
     {// Проверка правильности подбора типов фигур
         if ((s1->ID=='T' && s2->ID=='R')||(s2->ID=='T' && s1->ID=='R'))
         cout<<"Correct choice"<<endl;
     else {cout<<"Not such operation"<<endl;  return;}
     //Вычисления
    if (s1->GetArea()> s2->GetArea())  cout<<"Area "<<s1->ID<<" > "<<s2->ID<<endl;
     if (s1->GetArea()==s2->GetArea()) cout<<"Area "<<s1->ID<<" = "<<s2->ID<<endl;
     if (s1->GetArea()< s2->GetArea()) cout<<"Area "<<s1->ID<<" < "<<s2->ID<<endl;  
      }
       void IsInclude(Shape* s1, Shape* s2)
       {/* */}
        void IsIntersect(Shape* s1, Shape* s2)
       {/* */}
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2013, 14:11     Виртуальные функции: создание фабрики объектов для множества фигур
Посмотрите здесь:

C++ Виртуальные функции
Виртуальные функции после чтения объектов C++
Виртуальные функции. C++
C++ Виртуальные функции
виртуальные функции C++
C++ Создание фабрики по созданию объектов
Для чего виртуальные функции? C++
Для чего нужны виртуальные функции и виртуальное наследование ? C++
Создание множества объектов C++
C++ Разработать класс Product. Произвести создание нескольких объектов, вызвать для них созданные функции
C++ Функция, которая вычислит периметры множества фигур
C++ Создание функций для фигур

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
14.05.2013, 14:43     Виртуальные функции: создание фабрики объектов для множества фигур #2
Пробуй проверять нужные типы с помощью dynamic_cast()
примерно так:
C++
1
2
3
4
5
6
7
void Compare(Shape* s1, Shape* s2)
{
 if(dynamic_cast<pr9moygol6nik*>(s1)!=0&&dynamic_cast<pr9moygol6nik*>s2!=0)
//oba pr9moygol6nika делаешь то что тебе нужно вызываешь нужные функции
if(dynamic_cast<trapeci9*>(s1)!=0&&dynamic_cast<trapeci9*>s2!=0)
//oba trapecii делаешь, то что тебе нужно.
}
Добавлено через 3 минуты
Или как тебе нужно можешь по одному проверять
Yandex
Объявления
14.05.2013, 14:43     Виртуальные функции: создание фабрики объектов для множества фигур
Ответ Создать тему
Опции темы

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