Virtual Qt signal?

Viewed 14322

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 a valid code smell?

4 Answers
Related