Oh yes you got it wrong.

If I understand your problem, you have a base class say A, and there are different derived classes from it each wanting to connect to a common signal from base object but do derived class specific slot.

Will this example work?
Qt Code:
  1. //a.h
  2. Class A
  3. {
  4. public:
  5. static QTimer *timer;
  6. }
  7.  
  8. //a.cpp
  9. #include "a.h"
  10. QTimer * A::timer = new QTimer(0);
  11.  
  12. //b.h
  13. Class B : public A
  14. {
  15. }
  16.  
  17. //b.cpp
  18. #include "b.h"
  19. B::B() : A() {
  20. QObject::connect(timer, SIGNAL(timeout()), object, SLOT(object_slot()));
  21. }
To copy to clipboard, switch view to plain text mode 

Anyway this is just a basic C++ problem, nothing to do with Qt, you better read more about C++ static class members.