Właściwy sposób sprawdzenia typu klasy pochodnej QObject w Qt

Powiedzmy, że mam dwie klasy:

class A : public QObject {};
class B : public QObject {};

potem idę

QObject *a = new A();
QObject *b = new B();

teraz, jak mogę się upewnić, że „a” jest instancją klasy A, a „b” jest instancją klasy B?

obecnie robię coś takiego:

if (a->inherits(A::staticMetaObject.className())) {
...
} else if (a->inherits(A::staticMetaObject.className())) {
...

czy jest lepszy sposób?

questionAnswers(1)

yourAnswerToTheQuestion