程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++:使用復合(composition) 代替 private繼承

C++:使用復合(composition) 代替 private繼承

編輯:關於C++

復合方式(composition)和 private繼承, 都能表示, 根據某個類實現出新的類的形式, 即通過使用protected成員, 和重寫virtual函數.

優先選擇復合方式. 原因:

1. 復合方式, 可以實現重寫virtual函數, 然後阻止派生類重新定義virtual函數;

2. 可以使Widget的編譯依存度降至最低, 即只包含類的聲明式(復合), 而避免包含基類的頭文件(繼承);

例外: private繼承, 可以使EBO(空白基類最優化), 在某些空白基類的情況下很重要, 不過很少出現. 所以優先復合.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved