您好,登錄后才能下訂單哦!
在 C++ 中,可以通過虛函數(virtual function)和基類指針實現多態性,從而模擬 “super” 調用效果。具體步驟如下:
class Base {
public:
virtual void superFunction() {
// 基類中的實現
}
};
class Derived : public Base {
public:
void superFunction() override {
// 派生類中的實現
// 可以調用基類的實現,使用 this-> 語法
this->Base::superFunction();
}
};
int main() {
Derived d;
Base* b = &d;
b->superFunction(); // 調用派生類中的實現,同時通過基類指針實現多態性
return 0;
}
當通過基類指針調用虛函數時,會根據對象的實際類型來調用相應的實現。在這個例子中,即使基類指針指向派生類對象,但調用的是基類中聲明的虛函數,因此派生類中的實現不會被調用。如果想要在派生類中調用基類的實現,可以使用 this->Base::superFunction()
來顯式指定調用基類的實現。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。