<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > C++中類的分層設計(純虛函數(shù))

          C++中類的分層設計(純虛函數(shù))

          作者: 時間:2016-12-01 來源:網(wǎng)絡 收藏


          就假設我們要實現(xiàn)一個比較簡單的校園人類,假設已經(jīng)存在了一個人的基類(Base),那么學校的人存在很多的特征,但是我認為主要分成了3大類,主要是學生、教師、服務人員,因此可以再基類的基礎上派生出三個抽象類,Studtent, Teacher, Service,就如同上面的抽象類1,抽象類2,抽象類3。這時候設計一個實際的派生類也就減小了很多的冗余。但是我們覺得還是會存在很多的相似之處,比如學生類而言,還是可以再分,可以分為男女,這樣分并不是最好的,我們實際上可以按照專業(yè)分,這時候又可以再Student的基礎上派生出不同的學生專業(yè)抽象類,在各個專業(yè)下又可以分為博士、研究生、大學生抽象類,在這些抽象類的基礎上還可以分為男女抽象類,到這時就可以直接完成具體每一個派生類的實現(xiàn)啦,這時候的直接基類就是男女學生抽象類,這樣就形成了一個多層次的分解問題,將一個大的問題分解成了很多的子類,在子類的基礎上在分成更細的子類,最后到達一個精細的抽象子類,這時實現(xiàn)一個具體的派生類就會非常的方便。也就減少了很多的冗余代碼,雖然設計的類更多了,但是實現(xiàn)的方式會更加的容易。所以說分層設計的思想是一個重要的思想,分層就能將一個大問題逐步喜歡,而在C++中純虛函數(shù)(抽象類)的運用就能夠巧妙的解決這種多層次設計問題。所以說我們的分層設計不僅僅只是單一層的,也可以是多層次的。如下圖所示:

          因此我們應該掌握C++中這種純虛函數(shù)的用法,只有掌握了這種設計方法才能實現(xiàn)更加漂亮的類設計。當然上面只是我的一些遐想。具體的實現(xiàn)過程還需要在經(jīng)后的實踐中練習。在類的設計中多增加抽象類能夠簡化類的冗余度,使得類能更加方便的被繼承。從上面的結(jié)果我們可以將分層設計看做一個樹形結(jié)構,基類就是樹的根,而實際的派生類是就是葉,而那些中間的抽象層就是節(jié)點。

          本文引用地址:http://www.ex-cimer.com/article/201612/324491.htm

          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();