Показать сообщение отдельно
Старый 01.05.2007, 15:32     # 8
Drakosha
Full Member
 
Аватар для Drakosha
 
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557

Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)
к сожалению, прототип Call должен быть одинаков во всех классах. Поэтому может так:

Код:
class C1;
class C2;

class FunctorA : public Functor {
public:
  virtual void Call( Input & input) { m_c1.Do(input); }
C1 & m_c1;
};

class FunctorB : public Functor {
public:
  virtual void Call(Input & input) { m_c2.Do(input); }
C2 & m_c2;
};
Drakosha вне форума