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

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

Войти
Регистрация
Восстановить пароль
 
AntonIv
20 / 14 / 4
Регистрация: 19.10.2015
Сообщений: 61
#1

Вынести методы из классов Panel и PictureBox (явная реализация методов базовых абстрактных классов) - C++

19.12.2015, 21:09. Просмотров 180. Ответов 1
Метки нет (Все метки)

Тема: Множественное наследование. Явная реализация методов базовых абстрактных классов.

Как вынести методы из классов Panel и PictureBox?
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
//===========================================================================//
class IPicture
{
public:
    virtual void Draw() = 0;
};
//===========================================================================//
class IBorder
{
public:
    virtual void Draw() = 0;
};
//===========================================================================//
class Panel : public IPicture, public IBorder
{
public:
    void IPicture::Draw()
    { cout << "Panel::IPicture::Draw()\n"; }
 
    void IBorder::Draw()
    { cout << "Panel::IBorder::Draw()\n"; }
};
//===========================================================================//
class PictureBox : public IPicture, public IBorder
{
public:
    void IPicture::Draw()
    { cout << "PictureBox::IPicture::Draw()\n"; }
 
    void IBorder::Draw()
    { cout << "PictureBox::IBorder::Draw()\n"; }
};
//===========================================================================//
Такой код почему то не работает:
C++
1
2
3
4
5
6
7
8
9
10
11
void Panel::IPicture::Draw()
{ cout << "Panel::IPicture::Draw()\n"; }
 
void Panel::IBorder::Draw()
{ cout << "Panel::IBorder::Draw()\n"; }
 
void PictureBox::IPicture::Draw()
{ cout << "PictureBox::IPicture::Draw()\n"; }
 
void PictureBox::IBorder::Draw()
{ cout << "PictureBox::IBorder::Draw()\n"; }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2015, 21:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вынести методы из классов Panel и PictureBox (явная реализация методов базовых абстрактных классов) (C++):

Нюансы использования абстрактных базовых классов (класс Shape) - C++
У меня класс Point наследуется с абстрактного базового класса Shape, и Point тоже абстрактный, поскольку не определил функцию get_area()....

Множественное наследование с использованием абстрактных базовых классов, файлового ввода-вывода с применением потоков С++, функций обработки исключи - C++
Создать программу с абстрактным базовым классом и множественным наследованием, реализовать в нем: • конструктор, • деструктор, ...

Реализация отношения классов типа двунаправленная ассоциация, UML, порядок объявления классов, неполный класс - C++
Доброго времени суток! Осваивая UML, решил реализовать отношение двунаправленной ассоциации по диаграмме: У одного владельца...

Ошибка в инициализации базовых классов - C++
Привет. Пишу код из книги Лафоре. #include &lt;iostream&gt; using namespace std; #include &lt;windows.h&gt; enum posneg {pos, meg}; class...

Использование базовых и производных классов - C++
Не могу решить задачу с классами помогите с решением. Создать класс String – строка. Определить функции присваивания одной строки...

Модель электронного устройства с использованием абстрактных классов - C++
Здравствуйте, уважаемые форумчане! Продолжаю готовиться к экзамену по Real Time. Задание выложить не могу, но вкратце такое: Step 1...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
AntonIv
20 / 14 / 4
Регистрация: 19.10.2015
Сообщений: 61
21.12.2015, 00:12  [ТС] #2
Ошибка линковки...

И еще вопрос: такую реализацию принимает только VC++ или и другие компиляторы?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2015, 00:12
Привет! Вот еще темы с ответами:

Класс наследуемый от двух базовых классов - C++
Друзья Являеться ли класс (А)- Классом наследуемым от двух базовых классов? Если не правильно то как нужно написать ?.Помогите врозумить...

Создание неоднородного списка при помощи абстрактных классов - C++
Здравствуйте, столкнулся с проблемой при создании неоднородного списка при помощи абстрактных классов, помогите)

Продолжение цепочки наследования без дублей базовых классов - C++
class A { public: A(); int x; }; class B : public A { public:

Создать не менее 2-х базовых классов и класс, наследующий их поля - C++
Используя условия задач из лабораторной работы № 12-13, разработайте алгоритм и создайте программу с применением множественного...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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