• <td id="ae6ms"><li id="ae6ms"></li></td>
  • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
  • <table id="ae6ms"></table>
  • <td id="ae6ms"></td>
    <td id="ae6ms"></td>
  • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
  • <td id="ae6ms"></td>
  • <table id="ae6ms"><li id="ae6ms"></li></table>
  • <table id="ae6ms"></table>
    西西軟件園多重安全檢測下載網站、值得信賴的軟件下載站!
    軟件
    軟件
    文章
    搜索

    首頁編程開發VC|VC++ → C++之父認為C++有一個弱點兩大陷阱

    C++之父認為C++有一個弱點兩大陷阱

    相關軟件相關文章發表評論 來源:本站整理時間:2010/8/13 15:40:59字體大?。?em class="fontsize">A-A+

    作者:佚名點擊:469次評論:0次標簽: C++

    ApexDC++V1.6.1 純凈安裝版
    • 類型:網絡共享大?。?i>62.0M語言:多國語言[中文] 評分:5.0
    • 標簽:
    立即下載

    十年以來,Bjarne Stroustrup在不同的場合多次表示過,C++最大的弱點就是它的教學,因此,他許諾要親自寫一本教授C++的書——不同于The C++ Programming Language那樣的、真正面向學習者的教程,來正本清源,以一種他認為正確的方式來教C++?!禖++程序設計原理與實踐》這本書就是他實現諾言的作品。

    這本書并非零起點,對于完全沒有編程基礎的人來說,恐怕并不適合。從技術點的組織來看,也是一如Bjarne Stroustrup一直以來的風格,以一種娓娓道來的方式分布在書中各個地方。光看目錄,你很難知道他會在哪里講到什么技術點。但如果讀者有一定基礎, 知道編程是怎么回事,然后愿意以從頭到尾細細品讀的方式來學習C++,那么這本書應該是不錯的選擇。但知識點的分散也有很大問題,也不是所有人都有那個耐 心從頭到尾精讀,所以這本書也不能取代其他一些經典的C++書,比如可以當字典查的C++ Primer和The C++ Standard Library,比如可以當博客讀的Effective C++。但是有了這本書以后,學習C++的時候確實可以拿它當主干,其他的作參考和補充。

    為什么這么說呢?因為C++這個語言有個大陷阱,就是存在很多誘惑和可能性,很容易讓學習者早早就走到那些有趣的底層細節和奇技淫巧上,只見樹木 不見森林。比如你在一個類的設計階段就在考慮是否要讓它的某個成員函數內聯,或者本來要設計一個類,然后動手時成了一個模板類,重構時變成了一個多參數模 板類,這都是疑似墜井的信號。實際上以今天C++語言的成熟程度來講,絕大多數情況下,程序員可以依賴高級的基礎設施完成工作,只在非常罕見的地方需要用 到高度技巧化和底層化的技術。因此,按理來說,一個C++學習者也應該是先掌握這個語言的主體部分,然后才在必要的情況下進入細節的學習。這個應該是正 途,也是這本書采取的思路。這本書講授C++的最大特色,就是把C++當做一個真正高級的語言去講,從頭至尾充分調動了C++標準庫以及其他高級的基礎設 施。全書處理的非常平和,看不到技巧的炫耀和故作高深的叫賣,一切看上去都挺自然的。從C++自身的發展來講,這本書的出版,標志著C++教學度過了長達 20年的青春期,進入了成熟期。

    然而,就現實而言,這本書恐怕是來得太晚了。且不說C++的應用領域較之十年前已經大幅度萎縮了,即使是仍然在使用 C++的領域里,也早就充斥了大量的傳統遺留代碼。這些傳統的存在,強迫你必須按照奇技淫巧的方式來撰寫你自己的代碼,無論你多么不情愿。所以我不認為這 本書,以及C++0X的標準能夠總體上改變C++應用的現狀。悲觀點的說法是,C++到死,也就是這個樣了,難以有大的改觀。但是如果有人還是以很認真很 嚴肅的態度來學習C++,也能夠有機會在一些領域來做一些全新的工作,這本書應該是可以好好讀一下的。

    很多人可能覺得C++不行了,我相信在未來一段時間里,C++還有一定的用武之地。云計算興起之后,服務端的競爭可能還會使得C++在某些領域復 興,所以C++還是可以學一學的。C++這個語言最好也是最差的地方,就是它萬金油,怎么寫都能工作,好多種風格都支持,你用著用著總會有個好惡。比如對 我來說,C++這個語言最強的地方在于它的模板技術提供了足夠復雜的程序庫開發機制,可以把復雜性高度集中在程序庫里。做得好的話,在應用代碼部分我連一 個for循環都不用寫,犯錯誤的機會就少,效率還不打折扣,關鍵是看著代碼心里爽。那么它最爛的地方是面向對象基礎設施,簡直不入流,根本不配稱為面向對 象語言。從高的層面來講,C++可以寫組件,但是想做周全了挺麻煩的,算不上好的組件語言。從底層來說,C++跟C差不多是完全兼容,狗急跳墻了,我可以 回去寫C代碼。別人可能有不同的看法,不過有一點經驗的人,對于C++的長長短短多少都會有個感覺、有個偏愛。但是我現在覺得,用C++,最重要的一條, 就是心態平和,別較勁,別非要讓程序統一到某個你最信仰的風格下,更不用為此花一大堆精力去攢包裝(wrapper),什么直接就用什么。你寫程序時第一 個想到的路子,也就是你讀程序時最容易理解的路子。用始皇帝張藝謀的話說,就是手中無劍,心中也無劍,就是不殺,就是和平。以前的C++程序員們,多少都 有些殺氣,有嗔念,要走過很久才回得來。也許這本書能夠幫助后來者比較快地獲得一顆平常心?沒準兒。至少我希望是這樣。
     

      相關評論

      閱讀本文后您有什么感想? 已有人給出評價!

      • 8 喜歡喜歡
      • 3 頂
      • 1 難過難過
      • 5 囧
      • 3 圍觀圍觀
      • 2 無聊無聊

      熱門評論

      最新評論

      發表評論 查看所有評論(0)

      昵稱:
      表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
      字數: 0/500 (您的評論需要經過審核才能顯示)
      女人让男人桶30分钟免费视频,女人张开腿让男人桶个爽,一进一出又大又粗爽视频
    • <td id="ae6ms"><li id="ae6ms"></li></td>
    • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
    • <table id="ae6ms"></table>
    • <td id="ae6ms"></td>
      <td id="ae6ms"></td>
    • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
    • <td id="ae6ms"></td>
    • <table id="ae6ms"><li id="ae6ms"></li></table>
    • <table id="ae6ms"></table>