欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

快速入門的一些C\C++書籍

 更新時間:2015年12月14日 09:17:08   投稿:lijiao  
這篇文章為大家精心推薦了一些快速入門的一些C\C++書籍,希望大家可以喜歡,對這門語言可以產生興趣,需要的朋友可以參考下

人們常常問我有什么C++和編程的書籍推薦,今天就為大家分享了幾本

第一個注意項:如果你打算學習C++,請務必學習最新版的C++ 2011。這個版本的C++移除了許多由C++強大帶來的一些痛苦之處。另外,也不用擔心C++ 2014的書籍,大多數編譯器已經開始支持它了。

學習編程

學習編程包含以下幾個重要方面:

  • 了解語言的語法
  • 知道那些特性可以使用和何時使用
  • 寫出可讀性好的代碼:編譯器可以理解,但是下一個人是否可以閱讀呢?
  • 在一個更高層次設計結構良好的程序

為了學習一門語言,通常我們可以找到叫《X語言編程》的書。這也形成了一個潛規(guī)則:當你創(chuàng)建一門嚴肅的語言的時候,你需要編寫這樣一本書。學習語言有點像學習作文,但這并不意味著你能夠突然變成一個著名散文作家!

對于C++,這里有兩本相關的書:

  • 《C程序設計語言》 (Brian W. Kernighan, Denis M. Ritchie, TCPL)。這本書不是關于C++的,不過所有與C有關的東西都和C++有關。例如,這本書附帶的例子都可以看作C++的例子,只是不是真正的C,因為C++比C的編譯器要求更加嚴格。但是大部分編寫良好的C程序都可以在C++下編譯通過,TCPL是一本小書,并且被譽為X語言編程中最好的書籍。書中每一頁都充滿智慧。
  • 《C++程序設計語言》(Bjarne Stroustrup),一本杰出的書,書中的每一頁同樣充滿智慧。這本書有1400頁。Verity Stob對這本書有熱烈的評論。在TCPL中,我們讀到的是“C不是一個大的語言,因此也不需要一本長篇大論的書來講解”,但是講解C++的書卻有1400頁。盡管這本書很難一頁一頁地讀下去(不過,我?guī)缀踝x過了書中的每一頁),但是我建議每個人都擁一本。它講解了C++中的每一個方面,并且講解得非常不錯。有這本書可以作為C++的參考,你的編程生涯會受益良多。

我需要聲明一點,《C程序設計語言》不是一本學習C++的入門書籍,這本書是用來指導你學習的,同時,《C程序設計語言》也單獨提取了《A Tour of C++ 》篇章。

C++不僅是一門語言,也是指一個函數庫。在《C++程序設計語言》中也講解了C++標準庫,為了全面了解C++標準庫,我推薦:

  • 《C++標準程序庫:自修教程與參考手冊》(Nikolai Josuttis),和《C++程序設計語言》一樣,這也是一本大部頭的書。但是這本書涵蓋了C++標準庫的每一個方面(同時,也被稱作C++標準模版庫),第二版中涵蓋了C++2011標準。

如果你之前從事高級語言比如python,perl或者java,C和C++可能讓人生畏。不像其他語言,C/C++非常接近硬件。這也有一個優(yōu)點,可以充分利用硬件優(yōu)勢,但也讓你需要面對現實細節(jié)。Simon Tatham (作為Putty的開發(fā)者和編寫《缺失代碼怪味》的作者而知名,雖然他現在使用C開發(fā))寫了一篇非常棒的文檔:《The Descent to C》,這會降低你的學習難度,甚至經驗豐富的C開發(fā)者也可能受益一二。

如果你讀了上面三本書和鏈接,你已經可以熟練掌握C++了,并且善用C++標準庫。不過,你還沒有學習如何使用和何時適合使用C++的特性。C++作為一門強大的語言,有句話說:“使用C,你犯錯可能砸到自己的腳,而使用C++,你犯錯可能導致你整條腿都廢了“,這說的都是真的。

另外,C++強大之處在于你可以繼續(xù)使用你之前語言的開發(fā)方式?!?span style="color: #3366ff">我可以在任何語言中寫編寫FORTRAN代碼”。不過這樣不利于你成為一個更好的開發(fā)者。

用好C++

這里也有三本書,作者都是Scott Meyers,這將大大簡化一個立志于C++開發(fā)的人的生活:

1、Effective C++ 》——列舉了一些常見錯誤,有用的特性和編程中需要注意的事項。最近更新于2005年。
2、More Effective C++》——和上面一樣,不過講述得更多一些,同樣值得你去閱讀。
3、Effective STL》——最后更新于2001年,和《Effective C++》一樣,不過關注于C++標準庫。
如果你只想讀其中一本,選擇《Effective C++》,如果你想選擇兩本,再選擇《Effective STL》。

需要注意的是,Scott正在準備一本新的書,全面覆蓋了新的C++2014標準(這可以看著是對C++2011標準的改進,并且當前大多數編譯器已經支持了C++2014)。一旦這本書出版,你應當第一時間購入,本書的預覽部分已經看起來相當棒了。

更新:許多讀者都推薦了Stanley Lippman的《C++ Primer》,我不了解這本書,不過它更新了C++2011標準并且收到了很多贊譽,請告訴我你的觀點。

編寫良好的代碼

下面提到的書都討論了代碼風格,如果編寫代碼,不過它們其實范圍更廣。指導你如何編寫可讀性好的代碼的書有:

1、《程序設計實踐》,(Brian W. Kernighan, Rob Pike, TPoP),這不是一本特定于C++的書,不過談論了許多關于如何組織代碼,何時優(yōu)化代碼,何時不做優(yōu)化,如果調試和如何編寫代碼避免調試等等,我覺得每個開發(fā)組織都應該有這樣一本書。
2、《Linux內核代碼規(guī)范》(Linus Torvalds),這也不是一本關于C++的書,但是在第4節(jié)“命名”,第六節(jié)“函數”和第八節(jié)“注釋”中,我們都可以學習到許多。
每個想要提高其代碼的程序員最好認真閱覽《程序設計實踐》的每一頁。

設計大規(guī)模的代碼

我只知道一本書講述了這一點,我的一些思想形成也有賴于它。

《Large-Scale C++ Software Design 》(John Lakos),盡管本書有些年頭,里面的一些建議用于指導當初為缺乏存儲并且性能低下的機器開發(fā)程序的人們,從這本書我學習了如何將一個復雜系統(tǒng)拆解為多個有意義的模塊。特別需要注意的是在循環(huán)中處理依賴代碼。那些額外出現的細節(jié),使得你的代碼幾乎不能測試,因為每個模塊都非常依賴其他模塊。
以上就是我為大家推薦的書籍,都是我個人的觀點,希望對大家學習C++有所幫助,祝學習C++的童鞋進步!

相關文章

  • 詳解C++中實現繼承string類的MyString類的步驟

    詳解C++中實現繼承string類的MyString類的步驟

    這篇文章主要介紹了C++中實現繼承string類的MyString類的步驟,其中的要點是要實現運算符的重載,需要的朋友可以參考下
    2016-04-04
  • C語言數據結構中定位函數Index的使用方法

    C語言數據結構中定位函數Index的使用方法

    這篇文章主要介紹了C語言數據結構中定位函數Index的使用方法的相關資料,希望通過本文能幫助到大家,讓大家理解這部分內容,需要的朋友可以參考下
    2017-10-10
  • C++指針學習詳解

    C++指針學習詳解

    指針在 C\C++ 語言中是很重要的內容,并且和指針有關的內容一向令初學者頭大,這篇文章主要給大家介紹了關于C/C++中指針的相關資料,需要的朋友可以參考下
    2021-09-09
  • 聊一聊OpenCV相機標定

    聊一聊OpenCV相機標定

    這篇文章主要為大家詳細介紹了OpenCV相機標定的相關資料,即獲得相機參數的過程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • VisualStudio2019解決scanf函數報錯問題

    VisualStudio2019解決scanf函數報錯問題

    在 Visual Studio 2019 編輯代碼時,前期剛剛接觸到VS編譯器時存在的困惑,當用scanf()函數,進行輸入時,在運行的時候編譯器會出現警告報錯,本文就來介紹一下解決方法
    2023-08-08
  • C語言的動態(tài)內存管理你了解嗎

    C語言的動態(tài)內存管理你了解嗎

    這篇文章主要為大家詳細介紹了C語言的動態(tài)內存管理,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • C++智能指針weak_ptr的作用詳解

    C++智能指針weak_ptr的作用詳解

    weak_ptr是一個智能指針,也是一個類模板,本文主要介紹了C++智能指針weak_ptr的作用詳解,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • C/C++中的sizeof運算符和size_t類型的詳解

    C/C++中的sizeof運算符和size_t類型的詳解

    今天小編就為大家分享一篇關于C/C++中的sizeof運算符和size_t類型的詳解,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • VC實現動態(tài)菜單的創(chuàng)建方法

    VC實現動態(tài)菜單的創(chuàng)建方法

    這篇文章主要介紹了VC實現動態(tài)菜單的創(chuàng)建方法,需要的朋友可以參考下
    2014-07-07
  • C++依賴倒轉原則和里氏代換原則有什么好處

    C++依賴倒轉原則和里氏代換原則有什么好處

    設計模式(Design pattern)代表了最佳的實踐,通常被有經驗的面向對象的軟件開發(fā)人員所采用。設計模式是軟件開發(fā)人員在軟件開發(fā)過程中面臨的一般問題的解決方案。本篇介紹設計模式七大原則之一的依賴倒轉原則
    2023-02-02

最新評論