12
可以說我有一兩個類:正確的方法來檢查QObject的派生類類型的Qt
class A : public QObject {};
class B : public QObject {};
然後我去
QObject *a = new A();
QObject *b = new B();
現在,我該如何確保「一」是類A的一個實例,「b」是類B的一個實例?
目前我做這樣的事情:
if (a->inherits(A::staticMetaObject.className())) {
...
} else if (a->inherits(A::staticMetaObject.className())) {
...
有沒有更好的辦法?
那麼..看着繼承函數源顯示,它在內部使用qobject_cast來驗證對象類型 –
2010-01-05 14:07:56