Множественное наследование - синтаксис C++ для виртуальных функций
От: __watcher__ Удмуртия  
Дата: 04.12.12 20:59
Оценка:
Имеем следующий код:
class A {
 public:
  virtual void f() = 0;
};
class B : public virtual A {
 public:
  void somethingB ();
  virtual void f() { somethingB (); }
};
class C : public virtual A {
 public:
  void somethingC ();
  virtual void f() { somethingC (); }
};
class D: public B, public C, public virtual A {
 public:
  ...
};

Вопрос: обязательно ли для D определять свою реализацию для f: "void f(){ B::f () }"?
Или можно написать что-то вроде "using void B::f ();"?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.