множественное наследование и pure virtual
От: mpsnp  
Дата: 19.02.13 13:11
Оценка:
Значит ситуация такая:

есть базовый интерфейс
class IGUI
{
   virtual void SetWidth(...) = 0;
};


есть интерфейс наследник:
class IButton: public IGUI
{
    virtual void SetCaption(...) = 0;
};

class CGUI: public virtual IGUI
{
    void SetWidth(...);
};

class CButton: public IButton, public CGUI
{
    void SetCaption(...);
};


Вопрос вот в чем: почему при компиляции выдает ошибку, что IGUI::SetWidth(...) не имплементирован в CButton?
c++ pure virtual abstract
Re: множественное наследование и pure virtual
От: Evgeny.Panasyuk Россия  
Дата: 19.02.13 13:24
Оценка:
Здравствуйте, mpsnp, Вы писали:

M>
M>class IButton: virtual public IGUI
M>{
M>    virtual void SetCaption(...) = 0;
M>};
M>


virtual inheritance
Re[2]: множественное наследование и pure virtual
От: mpsnp  
Дата: 19.02.13 13:40
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Здравствуйте, mpsnp, Вы писали:


M>>
M>>class IButton: virtual public IGUI
M>>{
M>>    virtual void SetCaption(...) = 0;
M>>};
M>>


EP>virtual inheritance


Спасибо большое! В Страуструпе смотрел, а на вики не заглянул.
Re[3]: множественное наследование и pure virtual
От: Evgeny.Panasyuk Россия  
Дата: 19.02.13 13:46
Оценка:
Здравствуйте, mpsnp, Вы писали:

M>Спасибо большое! В Страуструпе смотрел, а на вики не заглянул.


У Страуструпа это тоже есть.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.