C++ 學習筆記 (六) 繼承- 子類與父類有同名函數,變量


  學習了類的繼承,今天說一下當父類與子類中有同名函數和變量時那么程序將怎么執行。首先明確當基類和子類有同名函數或者變量時,子類依然從父類繼承。

  舉例說明:

 

  

 

  

 

  例程說明:

  父類和子類有同名的成員 data;同名函數printfa();

  子類增加兩個打印函數:void son_data();void father_data(); 分別打印自身的data 和繼承來的data變量。

  

  總結說明同名函數/變量的使用

  1.訪問繼承的同名成員: 

    內部訪問:

     父類名::成員;

1     void father_data()
2     {
3         //訪問父類成員 使用this指針訪問自身的成員
4         cout<<"father data : "<<father::data<<endl;
5     }

      

    外部訪問(main函數52 /57行):

      對象名.父類名::成員

      

    

  2.使用this指針指向同名成員訪問的是在本類的成員。

  3.同名成員的訪問需要加上 類名::成員 ,如果沒加上類名則默認訪問子類的成員。

  4.同名的成員分配在不同的內存中,不存在內存共享沖突的問題

 

 

 同名函數和函數重寫virtual關鍵字的使用 在下一篇筆記中

C++ 學習筆記 (七)繼承與多態 virtual關鍵字的使用場景


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM