無需指針和引用的多晶象:一個神話
[如果您在堆上分配內存,您就會有動態綁定,”一個人可能會想。雖然是真的,但單純的記憶分配不足以完成多態性。以一個示例: 派生d; base* b =&d;
語義:多態性的關鍵當您創建基類指針或對派生類實例的引用時,您可以有效地保留對派生類方法的訪問。考慮:
base c = derived();儘管C是基礎的一個實例,但它不能表現出多態行為,因為它存儲了派生的對象的切片版本,失去了派生的類標識。間接指針提供了額外的靈活性。它們允許您指向任何類型的對象,包括基本和派生類。相比之下,引用只能綁定到特定類型的對象,限制其多態性功能。 結論[&&&&&&&&&&&&&&&&&&&&&& && &&&&&&&&& &&&&&&&&&& &&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&華素質很多很大,或參考率有很多)。使用指示器和參考文獻可確保編譯器維護必要的類型信息,從而可以動態地分解您的代碼中的方法和真實的多態行為。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3