2016-08-21 138 views
0

我有一個基類'a',其中包含一些虛函數,在派生類'b'我重載該函數。現在我只有一個從'b'派生的類'c',並且我有一個指向類c的指針。但是我無法弄清楚如何從'c'類指針調用該函數。幫助我,也許它很愚蠢,但我卡在這裏。如何派生類指針可以調用基類函數

回答

1
struct A { virtual void foo() {} }; 
struct B: A { void foo() override {} }; 
struct C: B {}; 

auto main() -> int 
{ 
    C o; 
    C* p = &o; 

    p->foo(); // Calls B::foo 
    p->A::foo(); // Calls A::foo 
} 
0

如果c是指針C

c->A::method(); 
+0

謝謝你的提示 和更具體的我的工作QT(C++圖形用戶界面庫)和我有一個連接功能,連接(「C類指針」,SIGNAL(A類FUNC),另一個ptr,SLOT(func)); 現在我只是使用這個功能,它是給我的錯誤,FUNC是不是在C類 是否有任何解決方案... –

相關問題