不太確定如何制定我的問題,我希望這更清楚。我想有一個基類,看起來是這樣的:是否可以使用「this」從派生對象的基類發出信號
class Base : public QObject {
Q_OBJECT
void doSomething() { emit test(this); }
virtual void doSomethingElse() = 0;
signals:
void test(Base*);
}
然後在派生類中做到這一點:
class Derived : public Base {
void doSomethingElse() { emit test(this); }
}
如果我現在聽這個對象的信號,做我聽測試(Derived *)或/和測試(Base *)?
你能否具體說明「聽」的意思 - 在這種情況下,很多事情都依賴於它,例如聽 - 將發送者作爲參數傳遞給slot或...? – milyaaf 2012-03-22 07:25:41
通過「連接(objectInMyExample,SIGNAL(試驗(基站* /派生*)),someOtherObject,SLOT(handleObject(基* /派生*))) – chikuba 2012-03-22 22:36:47
確定,所以在handleObject(基*)將把手基座和連接它handlObject(導出*),它會聽派生。 – milyaaf 2012-03-23 08:40:06