c++正确处理 is-a has-a关系
生活随笔
收集整理的這篇文章主要介紹了
c++正确处理 is-a has-a关系
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
比如。我們想實(shí)現(xiàn)一個(gè)Set類,而已經(jīng)有一個(gè)List類可提供給你使用,我們到底用is-a(public繼承)關(guān)系還是用has-a(組合)關(guān)系呢?
1:如果使用is-a關(guān)系,則
class Set:public List{
。。。。
};在處理插入的時(shí)候,List的insert方法不能滿足我們的需要,因?yàn)樗梢圆迦胫貜?fù)項(xiàng)。
2:has-a
class Set{
private:
?List *m_pList;
};
這樣我們可以使用List提供的基礎(chǔ)insert方法,而把能不能insert已經(jīng)數(shù)據(jù)結(jié)構(gòu)的處理(二叉樹(shù))與List分離。
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/zhidao-chen/p/3835816.html
總結(jié)
以上是生活随笔為你收集整理的c++正确处理 is-a has-a关系的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 赣南师范学院数学竞赛培训第02套模拟试卷
- 下一篇: MVC分页