[Qt-interest] Virtual signals in base class?

Robert Caldecott robert.caldecott at gmail.com
Thu Sep 9 09:49:26 CEST 2010


Whilst reviewing some Qt C++ code I came across this:

class Foo
{
  Q_OBJECT

signals:
  virtual void someSignal(const QString& str, int n)
  {
    Q_UNUSED(str);
    Q_UNUSED(n);
  }
  ...
};

Now, Qt signals cannot have a body so I'm surprised this even compiles
(perhaps because the body is effectively empty). I also don't see the
point of making a signal virtual (as it can't have a body so how can
it be overridden?)

Am I missing something here or is this code actually valid?



More information about the Qt-interest-old mailing list