欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
C++的學(xué)習方法及書(shū)籍推薦

C++的學(xué)習方法及書(shū)籍推薦

2005-08-05 17:35作者:MatrixCpp出處:CSDN責任編輯:王玉涵

  (一)我現在理解的C++

  種種原因,很多精力要投入到j(luò )ava的學(xué)習和使用中去了,想形成一個(gè)學(xué)習C++的系列文章,沒(méi)有什么風(fēng)格,也沒(méi)有什么時(shí)間表,想到哪就去寫(xiě)。這里把以前自己另外一個(gè)ID發(fā)表的一篇文章的一部分作為這個(gè)系列的第一篇,算是開(kāi)頭吧。

  學(xué)習C++重在理解其各種語(yǔ)言設施所代表的語(yǔ)義,以及C++所能表示的語(yǔ)義所代表的設計思想。首先從宏觀(guān)上入手,你需要明白的是C++是程序設計語(yǔ)言的本質(zhì)。在此我把C++最重要的性質(zhì)寫(xiě)下來(lái):C++是一門(mén)靜態(tài)類(lèi)型檢查,基于C內存模式,支持四種基本程序設計范型的語(yǔ)言。注意,這里說(shuō)明了三個(gè)本質(zhì)特性,靜態(tài)說(shuō)明了語(yǔ)言的類(lèi)型檢查性質(zhì),基于C內存模式告訴我們在C++中所有與內存有關(guān)的操作都需要程序員自己來(lái)負責,這樣就帶來(lái)了很多設計程序時(shí)的需要注意的地方,而理解支持的四種基本范型卻是理解各種語(yǔ)言設施的基礎。然后記住C++的最大的一點(diǎn)設計哲學(xué),也是其貫穿應用C++的一條本質(zhì),我引用《C++ PRIMER》中文版前言?xún)鹊囊痪湓?huà)表示--“C++的基礎是各種設施,它們讓用戶(hù)能夠通過(guò)定義新的數據類(lèi)型來(lái)擴展語(yǔ)言本身,這些新類(lèi)型可以與內置類(lèi)型一樣的使用方式(如何理解這句話(huà)是關(guān)鍵,我的理解是:用戶(hù)定義類(lèi)型可以在任何使用內置類(lèi)型的時(shí)候做為其替代,再具體點(diǎn)說(shuō)就是用戶(hù)定義類(lèi)型可以象內置類(lèi)型那樣可以被聲明,其對象可以被初始化,可以相互復制,可以象內置類(lèi)型對象那樣和很多操作符一起使用,可以被作為參數傳遞給函數,可以作為函數的返回值,可以作為容器的操作對象,用戶(hù)定義類(lèi)型可以和內置類(lèi)型一樣作為模板的參數),掌握這些設施(哪些設施?就是讓用戶(hù)定義類(lèi)型可以和內置類(lèi)型一樣方便使用的設施,包括什么?構造,拷貝,解構函數,操作副重載.....)的第一步就是理解基本語(yǔ)言(什么是基本語(yǔ)言?就是C++中better c部分)。

  在此,我還想提出一點(diǎn)十分重要的概念:一門(mén)語(yǔ)言的最本質(zhì)的東西就是其類(lèi)型系統,任何語(yǔ)言都有自己的獨特的類(lèi)型系統,學(xué)習C++就是學(xué)習他的類(lèi)型系統。所以首先需要徹底明白什么是數據類(lèi)型這個(gè)概念。這樣你的思路就清楚了,你有選擇,從每一種C++支持的設計范型入手學(xué)習。

  結構化設計-----也就是C++中的better c部分,你需要在C的基礎上學(xué)會(huì )函數重載和引用這兩個(gè)最重要的語(yǔ)言新特心性。

  基于對象----你需要建立C++最強大的概念--類(lèi),也就是用戶(hù)定義類(lèi)型,這其實(shí)就是數據結構里面接觸的抽象數據類(lèi)型的概念,以及合理構造使用類(lèi)的一系列語(yǔ)言措施。并始終記住,在C++進(jìn)行設計時(shí)用類(lèi)來(lái)表示我們需要表示的概念。類(lèi)也是C++抽象機制里面最核心的概念。

  面向對象----在這里你需要知道繼承和多態(tài)這樣的OO概念,以及句柄類(lèi)這樣常見(jiàn)的設計技術(shù),這里你需要明白你開(kāi)始進(jìn)入了對接口編程的階段。同時(shí)你要學(xué)會(huì )OO思想,C++的一些設施只是為了把OO思想在語(yǔ)言所支持的語(yǔ)義中充分的表示出來(lái)。但是在這里,同時(shí)你需要明白的C++能表示的語(yǔ)義是受到其當初語(yǔ)言設計原則限制的(什么原則?靜態(tài)類(lèi)型檢查,不為不需要的東西付出代價(jià),選擇權在程序員手上語(yǔ)言本身不去強迫程序員的做出選擇),也就是說(shuō)C++所能表示的OO思想可以稱(chēng)為具有C++特色的OO思想了。這樣的OO思想和JAVA所代表的純OO哪個(gè)更好?沒(méi)有定論,因為他們本身的設計理念就不一樣。

  泛型設計----這里你需要明白最重要的一點(diǎn)是C++的temlate機制無(wú)論其開(kāi)始建立的初衷是什么,現在他所代表的真實(shí)含義是:編譯時(shí)類(lèi)型推導,也就是編譯時(shí)多態(tài),由此明白了泛型的核心---把各種類(lèi)型當作一種抽象條件的具體化,C++有措施可以定義抽象條件嗎?沒(méi)有,所以這些條件只能定義在我們自己的心中,但我們可以把具體化的類(lèi)型當作一種抽象條件實(shí)現在template機制中去,從而使tempalte成為比類(lèi)型推導機制更進(jìn)一步的東西,那就是抽象條件的推導。也就是說(shuō),我們不再把template接受的參數看成是類(lèi)型,而是把template看成是一種接受抽象條件的機制,無(wú)論其類(lèi)型如何,只要這種類(lèi)型滿(mǎn)足tempalte所接受的抽象條件就可以作為參數傳遞進(jìn)去,這樣就代表了一種泛型的思想-----類(lèi)型不再是根本,抽象條件才是,類(lèi)型不過(guò)是抽象條件的外衣和在C++中的實(shí)現方式而已。在結合基于對象和泛型設計這兩種抽象設計模式的技術(shù)上誕生的工業(yè)產(chǎn)品就是---STL。

  (二)書(shū)的誘惑

  《C++程序設計語(yǔ)言》:如果你只買(mǎi)一本C++書(shū),這本就是你的選擇,作者Bjarne就是讓你做出這樣選擇的全部理由,沒(méi)有人能比他更了解什么樣才是真正的使用C++編程了,有人說(shuō)到這本書(shū)語(yǔ)言晦澀,或者對與初學(xué)者此書(shū)不適合,對此評論我頗不以為然,我看的是中文版,起碼在我看來(lái)語(yǔ)言描敘非常到位,我喜歡這樣的技術(shù)描敘風(fēng)格。全書(shū)的核心就是告訴你如何去用正確的觀(guān)念編寫(xiě)正確的C++的代碼。強烈推薦。

  《C++語(yǔ)言設計與演化》:這本書(shū)也是我同時(shí)擁有中英兩版的兩本書(shū)之一(另外一本是《設計模式》)。如果在得到上面的那本書(shū)之后你需要第二本,那么在我看來(lái)這就是你的選擇,作者同樣是Bjarne,他將在這本書(shū)中告訴你C++的起源與發(fā)展,語(yǔ)言原則與本質(zhì),各種特性加入的理由和考量,以及幾乎一切關(guān)于C++有趣的故事。我閱讀過(guò)中英兩版,都是強烈推薦。

  《C++標準程序庫》:在A(yíng)MAZON上面關(guān)于C++書(shū)籍評論最為火暴的一本。全書(shū)對于標準程序庫的介紹可謂深入淺出,而且全書(shū)都是從實(shí)際運用出發(fā),書(shū)中例子簡(jiǎn)單卻非常說(shuō)明問(wèn)題,加上一些圖表的陳列,使其概念十分清晰,而且從手冊和學(xué)習兩方面看都有其存在價(jià)值。強烈推薦。

  《EFFECTIVE C++ 中文版》:無(wú)須多說(shuō),在任何C++書(shū)籍推薦目錄中都可以找到這本書(shū)的身影,盛名之下必無(wú)虛士。主要強調的是運用C++的各種特性的時(shí)候所必須注意的地方,以及一些比較通用的設計手段。其短小精悍的語(yǔ)言自然非常適合快節奏的現代風(fēng)格,個(gè)人就十分喜歡Meyer的寫(xiě)作方式。強烈推薦。

  《MORE EFFECTIVE C++ 中文版》:做為上本書(shū)的姐妹篇,一樣的寫(xiě)作風(fēng)格,一樣的寫(xiě)作目的。只是個(gè)人認為和其姐姐相比,存在差距,主要是信息量沒(méi)有《EFFECTIVE C++ 中文版》那么大,主要說(shuō)到了一些C++的設計慣用手法。推薦。

  《C++ PRIMER 中文版》:同樣是出自大師之手,作者LIPPMAN,作為早期C++編譯器的實(shí)現者之一,對與C++的了解以及該如何論序都有自己的獨到見(jiàn)解。做為C++的百科全書(shū)和《C++程序設計語(yǔ)言》有著(zhù)一樣的地位。但是前者更強調的是C++的語(yǔ)法和其語(yǔ)義,而后者則是以如何用C++進(jìn)行合理設計做為描敘的中心。全書(shū)構思十分巧妙,書(shū)的一開(kāi)始就直接進(jìn)入C++的主題,前面五章都用類(lèi)設計一個(gè)數據結構,讓讀者完全明白了各種用戶(hù)定義類(lèi)型所代表的抽象能力,然后直接進(jìn)入第六章標準庫中的容器類(lèi),這樣的設計讓讀者十分清楚的建立容器和類(lèi)這兩個(gè)C++中十分重要的概念。這樣的設計針對有一定基礎的C++讀者來(lái)說(shuō)可以說(shuō)是非常有效果的。但是對于初學(xué)者來(lái)說(shuō),這確實(shí)不是一本合適的書(shū)籍,因為一上來(lái)太多的名詞會(huì )把剛剛接觸C++的人嚇著(zhù)的。推薦。

  《C++沉思錄》:非常有特點(diǎn)的一本書(shū),全書(shū)假設讀者已經(jīng)通曉C++語(yǔ)言,重點(diǎn)告訴讀者C++的概念以及一些C++的設計手段,比如用C++到底為什么會(huì )比C或者其他過(guò)程語(yǔ)言更好?(書(shū)中給出的答案是,因為只有對象才有能力保持一定的狀態(tài),而算法沒(méi)有這樣的能力),如何進(jìn)行抽象數據類(lèi)型的程序設計,如何理解多態(tài),如何通過(guò)代理隱藏繼承,如何進(jìn)行引用技數,為了效率如何進(jìn)行緩時(shí)拷貝,以及模板技術(shù)是如何發(fā)展演進(jìn)最后構成成STL庫的。閱讀感覺(jué)和《C++程序設計語(yǔ)言》一樣,思想性非常強,讀這樣的書(shū)很累,腦子必須一直思考問(wèn)題,思考作者里面提出的問(wèn)題和他提出的解決方式。這本書(shū)最大的特點(diǎn)是非常直接的把C++語(yǔ)言的核心暴露出來(lái)-----三種抽象模型和極其語(yǔ)言設施本身對這三種抽象模型的支持。而《C++沉思錄》給我的更深層思考是什么才是運用C++最合理的方式。推薦。

  《C++ STL中文版》:很樸實(shí),不花俏,但是價(jià)值很高。個(gè)人認為其主要價(jià)值體現在以下幾個(gè)方面:1,對于STL的實(shí)現關(guān)鍵iterator一般都使用了兩種方式描敘,一種比較老式的函數方法,一種是新的?traits技巧,這樣讀者可以非常清楚的知道技術(shù)的演進(jìn)。2,提供了一個(gè)STL LITE版本,閱讀這樣的代碼對自己的提高非常大。3,書(shū)中提供的測試模塊對于讀者來(lái)說(shuō)也是非常有的一章,對于想擴展STL的,可以按照上面提供的方法測試自己的STL組件。缺點(diǎn):裝訂比較粗糙,與大師之作的地位不相稱(chēng)。推薦

  《C++ PRIMER PLUS 中文版》:一本思想性不是很強,技巧性不是很強的書(shū),但是對于初學(xué)者來(lái)說(shuō)非常合適的書(shū)。其中許多論序方式都和具體化,總體來(lái)說(shuō),這本書(shū)是我看過(guò)的C++書(shū)籍里面最合適初學(xué)者的。推薦。

  《深度探索C++對象模型》:這也是一本比較特別的書(shū),告訴你編譯器是如何安排處理對象的內存空間的,以及一些OO特性是如何實(shí)現的。不認為這是一本C++必須讀物,算是課后讀物應該比較合適吧,因為有時(shí)間了解C++的OO實(shí)現還不如花點(diǎn)時(shí)間搞清楚OO理論的本質(zhì)概念:type theory。推薦。

  《C++設計新思維——泛型編程與設計模式之應用》:可謂C++中的奇書(shū)。這樣的一本書(shū),很難讓人做出正確的評價(jià)與推薦指數(尤其是以我這個(gè)實(shí)用和人生本就應該享樂(lè )為人生觀(guān)的人來(lái)說(shuō)~:),因為全書(shū)所代表的思想前衛到了有點(diǎn)不切實(shí)際的地步,模式+泛型—多么高雅的組合。我個(gè)人的觀(guān)點(diǎn)是,只有一部分人需要閱讀此書(shū),他們就是所謂的real c++ fans,暫且不提C++本身是否遇到了困難,就其書(shū)中所代表的設計思想,對于C++沒(méi)有一點(diǎn)感情的程序員(感情就是以愛(ài)好為基礎,而不是以攢錢(qián)為前提),我想對于這樣的設計技術(shù)總會(huì )有暈的感覺(jué),而一般程序員多半都不會(huì )喜歡這樣的感覺(jué)~:)。推薦。

  《對象揭秘:Java、Eiffel和C++》:從書(shū)名就可以看出這本書(shū)不僅僅和C++有關(guān)系??梢哉f(shuō)全書(shū)就是對C++的一次批判吧(書(shū)也起源與作者的一篇批判C++的文章)。有時(shí)候聽(tīng)聽(tīng)另外一種聲音對自己保持清醒的頭腦是非常有幫助的,對待一個(gè)人,對待一本書(shū)以及對待一門(mén)程序設計語(yǔ)言都是如此。這本書(shū)好象不是很火,大概跟其宣傳不是很到位,或者同能同時(shí)了解這三門(mén)語(yǔ)言并比較關(guān)心這些語(yǔ)言深層次的優(yōu)略的讀者比較少有關(guān)系吧,在我看來(lái)這本書(shū)包含了許多對象與類(lèi)型方面的理論,最為出彩的就是作者抓住Bjarne的“在C++中一個(gè)類(lèi)就是一個(gè)類(lèi)型”這樣的“錯誤”言論狠批的論證過(guò)程??催@本書(shū)另外一個(gè)好處是能教會(huì )大家該如何去合理的辯駁自己的對手~:)。推薦。

  《大規模C++程序設計》:書(shū)在手上很久了,可一直沒(méi)有仔細看,這也是評論之前必須說(shuō)明的??傮w看來(lái)書(shū)中涉及的很多東西都鮮見(jiàn)于其他讀本。不管AMAZON上的評論是否是這本書(shū)比較過(guò)時(shí),起碼它介紹的許多對與我來(lái)說(shuō)都是我所不知道不了解的,別人說(shuō)過(guò)時(shí)是他的事情。而我,還是推薦。

  《STL和泛型編程》:難得的一本關(guān)于泛型編程的理念書(shū)籍,同樣也是作為手冊和學(xué)習兩用,但是其手冊不是使用手冊,而是概念手冊,對于設計自己的STL組件,這本書(shū)有非常好的幫助,雖然網(wǎng)上有篇STL的文檔,其中的70%內容和這本書(shū)雷同,但此書(shū)仍不失可讀性。推薦。

  《C++編程思想 第二版》:非常一般的書(shū),是的這就是我對這本很多人奉為名著(zhù)的評論,至于為什么是這樣的評論,或者你不相信我說(shuō)的是客觀(guān)話(huà),在你買(mǎi)了之后看完就知道了。一般。

  《Essential C++中文版》:總感覺(jué)這本書(shū)定位不是很清楚,因為對于初學(xué)者來(lái)說(shuō)其開(kāi)始就涉及了太多的名詞,初學(xué)者看這本書(shū),幾乎就不要指望能很好的入門(mén)。而對于進(jìn)階者來(lái)說(shuō),其內容并無(wú)新意,對于C++高手來(lái)說(shuō),這樣的小讀本,根本就沒(méi)有閱讀的必要,也許是LIPPMAN+JJHOU的盛名吧,但我覺(jué)得這次算是有虛士了~:)。一般。

  《STL源碼剖析》:侯SIR的大陸兩本著(zhù)作之一,但在我心中其質(zhì)量好象并不如很多人說(shuō)的那樣好,就同類(lèi)作品《C++ STL中文版》相比較內容略現單薄,并且三章之后很多東西都給人以堆砌的感覺(jué),而且大部分精彩的材料都出自《STL和泛型編程》一書(shū),給人感覺(jué)書(shū)中侯SIR自己的東西并不多,但第二章對于內存管理有很好的論敘表現,并且裝訂精良,尤其是那些圖更是侯SIR的拿手好戲,但總體感覺(jué)有點(diǎn)華而不實(shí)。一般。

  后面列出兩本不推薦的,具體原因也就不再分析。

  《高質(zhì)量程序設計指南--C++/C語(yǔ)言》,《C++編碼規范》

  另外兩本常見(jiàn)的C++書(shū)籍:

  《Exceptional C++中文版》,《More Exceptional C++中文版》我本人并沒(méi)有閱讀過(guò),但其名聲不小,而且加之曾經(jīng)給此書(shū)作者Herb Sutter通郵件的經(jīng)歷,那種考慮到時(shí)差都不到24個(gè)小時(shí)的回信率以及在信中耐心的對技術(shù)講解的態(tài)度,同樣向大家推薦這兩本書(shū),因為在我看來(lái)Herb Sutter能力無(wú)須考慮加上這樣待人的態(tài)度,其作品理所值得大家閱讀。

  是的,上面就是我大半年來(lái)看過(guò)的C++的書(shū)籍,肯定不少人要嘲笑我的個(gè)書(shū)呆子了~:),其實(shí)我確實(shí)就是一個(gè)書(shū)呆子,至于是否需要看這么多書(shū),我個(gè)人意見(jiàn)是不需要,不然我還給出推薦等級干什么?選擇自己需要的就是最好。引用曾經(jīng)有人說(shuō)到的---評書(shū)其實(shí)就是個(gè)“如人飲水,冷暖自知”的事情。真正的書(shū)評在哪里?各自的心里。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
如何成為一名C++程序員 - C++程序員 - 豆豆網(wǎng)
【分享】這些年看過(guò)的書(shū)
C/C++從入門(mén)到進(jìn)階必修書(shū)籍
c++書(shū)籍
程序基于精確的數學(xué)
推薦的C++書(shū)籍以及閱讀順序
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久