重寫後呼叫C 中基類的虛函數
在軟體開發中,常常會遇到需要呼叫基底類別的場景類別的函數來自衍生類,即使您已經重寫了該函數。在 C 中,與 Java 不同,您不能使用簡單的 super.funcname() 語法來實現此目的。
考慮以下程式碼片段:
在此範例中,Bar 繼承自 Foo並覆寫 printStuff() 函數。但是,您可能想要在某些上下文中保留 Foo::printStuff() 的原始功能。
要在 C 中呼叫基底類別的 printStuff() 函數,您必須使用 :: 明確命名基底類別操作員。具體方法如下:
在此修改後的程式碼中,在重寫的 Bar::printStuff() 函數中呼叫 Foo::printStuff() 基底類別函數。 override 關鍵字幫助編譯器驗證函數確實重寫了基底類別函數。
透過明確呼叫基底類別函數,您可以靈活地使用 printStuff() 的基底類別和衍生類別實作。這在各種場景中都很有用,例如在重寫實作之前或之後呼叫原始函數來執行常見任務。
以上是重寫後如何在 C 中呼叫基底類別的虛函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!