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

Наследование через превосходство. Как исправить? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сложение дат http://www.cyberforum.ru/cpp-beginners/thread749714.html
Вообщем при складывании дат имеется кусочек: day=day+d1; while (month==1 && day>31 || month==3 && day>31 || month==5 && day>31 || month==7 && day>31 || month==8 && day>31 || month==10 && day>31 || month==12 && day>31 ) { month=month+1; day=day-31; while (month>12) { year=year+1;
C++ Загвоздка в значении переменной int i = 5; i = ++i + ++i; Чему будет равно i? Помню, в Страуструпе что-то похожее было, но не вспомню. http://www.cyberforum.ru/cpp-beginners/thread749661.html
C++ Однонаправленный список (сохраняет только первый и последний элемент)
class Lancuch { public: char cos; Lancuch * nastepny; }; Lancuch ** elem;
C++ Работа с дисководом
Как работать с дисководом в с++? К примеру, функция, проверяющая, есть ли диск в дисководе, или, к примеру, открывающая дисковод. Какую для этого библиотеку надо использовать? Если у кого-нибудь есть мануал на эту тему, буду премного благодарен, если вы мне дадите на него ссылку. :)
C++ int\ volatile int \ const int http://www.cyberforum.ru/cpp-beginners/thread749642.html
Товарищи, паника! Имеется код: int a = 5; std::cout << "Init value a: " << a << "\n"; int *p; p = (int*) &a; *p = 0; std::cout << "*p = " << *p << "\n"; std::cout << "New value a: " << a << "\n"; std::cout << "p = " << p << "\n";
C++ Динамическое увеличение размера динамического массива Никак не могу понять как это исправить.. Помогите, пожалуйста, разобраться в чём дело: struct myPoint { int x; int y; }; int qbordlength = 0; myPoint* qbord = new myPoint; подробнее

Показать сообщение отдельно
Riderik
 Аватар для Riderik
28 / 28 / 1
Регистрация: 24.07.2011
Сообщений: 171
29.12.2012, 18:51     Наследование через превосходство. Как исправить?
Схема классов на изображении снизу. При данной иерархии компилятор выдает предупреждение: "Client: наследуется "Human::Human::funk1" через превосходство". И собственно вопрос: как это исправить?

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
class IData {
public:
    virtual ~IData() = 0 {}
};
 
class IHuman: virtual public IData {
public:
    virtual void funk1() = 0;
};
 
class IClient: virtual public IHuman {
public:
    virtual void funk2() = 0;
};
 
class Human: virtual public IHuman {
public:
    void funk1() {}
};
 
class Client: public IClient, public Human {
public:
    void funk2() {};
};
 
int main() {
    IClient* client = new Client;
    client->funk1();
    client->funk2();
}
Миниатюры
Наследование через превосходство. Как исправить?  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru