Multiple inheritance of QObject is not supported, check this post.

Here's a little example what can be done with QMetaObject.
Let's take a look at a classical C++ interface approach first. Here we define an interface:
Qt Code:
  1. class SomeInterface
  2. {
  3. public:
  4. virtual ~SomeInterface() {}
  5.  
  6. virtual void operation() = 0;
  7. };
To copy to clipboard, switch view to plain text mode 
And then implement the interface in various classes:
Qt Code:
  1. class SomeWidget : public QWidget, public SomeInterface
  2. {
  3. public:
  4. SomeWidget(QWidget* parent = 0);
  5.  
  6. // SomeInterface
  7. void operation();
  8. };
  9.  
  10. class SomeObject : public QObject, public SomeInterface
  11. {
  12. public:
  13. SomeObject(QWidget* parent = 0);
  14.  
  15. // SomeInterface
  16. void operation();
  17. };
To copy to clipboard, switch view to plain text mode 
Ok, so far so good. Then we have a plain QObject pointer in hand which we need then cast to the appropriate type to be able to call SomeInterface methods:
Qt Code:
  1. // QObject* object
  2. SomeInterface* some = dynamic_cast<SomeInterface*>(object);
  3. if (some)
  4. {
  5. some->operation();
  6. }
To copy to clipboard, switch view to plain text mode 
Not very handy is it? Well, Qt at least has a more convenient way for solving such..

We can get away without defining any interface at all by declaring all the functions we had in the interface as slots:
Qt Code:
  1. class SomeWidget : public QWidget
  2. {
  3. Q_OBJECT
  4.  
  5. public:
  6. SomeWidget(QWidget* parent = 0);
  7.  
  8. public slots:
  9. // no more "SomeInterface", just slots
  10. void operation();
  11. };
To copy to clipboard, switch view to plain text mode 
And then we can simply call the methods through QMetaObject:
Qt Code:
  1. // QObject* object
  2. bool ok = QMetaObject::invokeMethod(object, "operation");
To copy to clipboard, switch view to plain text mode 
QMetaObject::invokeMethod() even supports return value and arguments.. Not bad huh?

Thanks bhughes @ #qt @ freenode!