導航:首頁 > 編程語言 > c設計新思維泛型編程與設計模式之應用

c設計新思維泛型編程與設計模式之應用

發布時間:2022-01-24 07:56:39

㈠ 只學C++! 我現在想學好C++然後找一份工作,請介紹學C++的一些書籍,先後順序排一下,我想學好C++!

先看c++ prime plus
再看MFC深入淺出。
祝福你~沒分沒關系。與你共勉,希望我們都能堅持看下來。
沒有電子版的,去買的。我覺著一本實實在在的書最好了

㈡ 求C++程序設計語言(特別版)中文版 PDF(非掃描版)!!!!!!!!!!!我會追加分的!

你的掃描版怎麼了?不清晰嗎?我下得應該是掃描的但是還不錯啊

㈢ 計算機二級C語言怎麼學

1.題庫每年都會有一點變化,但是變化不大,每一年的肯定會新增一些題目,萬卷不離其宗,考來考去知識點都那些,多看書,多做題,就差不多了。做歷年真題就行了,和考四六級一樣。都是模式化的東西。

2.計算機二級C語言考試的流程:
1)筆試:90分鍾,滿分100分,其中含公共基礎知識部分的30分。
2)上機操作:90分鍾,滿分100分。
上機操作包括:
(1) 基本操作。
(2) 簡單應用。
(3) 綜合應用。

3.計算機二級C語言考試內容 :
一、C語言程序的結構
1.程序的構成,main函數和其他函數。
2.頭文件,數據說明,函數的開始和結束標志以及程序中的注釋。
3.源程序的書寫格式。
4.C語言的風格。
二、數據類型及其運算
1.C的數據類型(基本類型,構造類型,指針類型,無值類型)及其定義方法。
2.C運算符的種類、運算優先順序和結合性。
3.不同類型數據間的轉換與運算。
4.C表達式類型(賦值表達式,算術表達式,關系表達式,邏輯表達式,條件表達式,逗號表達式)和求值規則。
三、基本語句
1.表達式語句,空語句,復合語句。
2.輸入輸出函數的調用,正確輸入數據並正確設計輸出格式。
四、選擇結構程序設計
1.用if語句實現選擇結構。
2.用switch語句實現多分支選擇結構。
3.選擇結構的嵌套。
五、循環結構程序設計
1.for循環結構。
2.while和do-while循環結構。
3.continue語句break語句。
4.循環的嵌套。
六、數組的定義和引用
1.一維數組和二維數組的定義、初始化和數組元素的引用。
2.字元串與字元數組。
七、函數
1.庫函數的正確調用。
2.函數的定義方法。
3.函數的類型和返回值。
4.形式參數與實在參數,參數值的傳遞。
5.函數的正確調用,嵌套調用,遞歸調用。
6.局部變數和全局變數。
7.變數的存儲類別(自動,靜態,寄存器,外部),變數的作用域和生存期。
八、編譯預處理
1.宏定義和調用(不帶參數的宏,帶參數的宏)。
2.「文件包含」處理。
九、指針
1.地址與指針變數的概念,地址運算符與間址運算符。
2.一維。二維數組和字元串的地址以及指向變數、數組、字元串、函數、結構體的指針變數的定義。通過指針引用以上各類型數據。
3.用指針作函數參數。
4.返回地址值的函數。
5.指針數組,指向指針的指針。
十、結構體(即「結構」)與共同體(即:「聯合」)
1.用typedef說明一個新類型。
2.結構體和共用體類型數據的定義和成員的引用。
3.通過結構體構成鏈表,單向鏈表的建立,結點數據的輸出、刪除與插入。
十一、位運算
1.位運算符的含義和使用。
2.簡單的位運算。
十二、文件操作
只要求緩沖文件系統(即高級磁碟I/O系統),對非標准緩沖文件系統(即低級磁碟I/O系統)不要求。
1.文件類型指針(FILE類型指針)。
2.文件的打開與關閉(fopen,fclose)。
3.文件的讀寫(fputc,fgetc,fputs,fgets,fread,fwrite,fprintf,fscanf函數的應用),文件的定位(rewind,fseek函數的應用)。

㈣ 如何很快學精C ,C++,C#望各位前輩給予詳解!

最好的方法:邊做一個項目,邊用MSDN,少用Ctrl+C,Ctrl+V, 堅持!

㈤ 大一就學C++了,神馬的什麼都聽不懂啊,怎麼辦啊,覺得周圍男生都好厲害的樣子,要怎麼學好這門課啊

[推薦]c++參考書(上篇)
C++是一門廣泛用於工業軟體研發的大型語言。它自身的復雜性和解決現實問題的能力,使其極具學術研究價值和工業價值。和C語言一樣,C++已經在許多重要的領域大獲成功。然而,一個不可否認的現實是,在低階程序設計領域,C++擠壓著C同時也在承受著C的強烈反彈,而在高階程序設計領域,Java和C#正在不斷蠶食著C++的地盤。也許C++與C合為一體永遠都是一個夢想,也許Java和C#的狂潮終將迫使C++回歸本位 — 回到它有著根本性優勢的開發領域:低級系統程序設計、高級大規模高性能應用設計、嵌入式程序設計以及數值科學計算等。果真如此,我認為這未嘗不是一件好事。
C++吸引如此之多的智力投入,以至於這個領域的優秀作品,包括重量級的軟體產品、程序庫以及書籍等,數不勝數。文題「C++程序設計之四書五經」一個不太嚴格的含義是:C++程序設計之四書 ⅹ 五經。是的,在本文(及其下篇)中,我將分門別類推薦20多本C++好書,你可以根據自己的需要選讀。
TCPL和D&E
TCPL和D&E分別是《The C++ Programming Language》和《The Design and Evolution of C++》的簡稱,均出自Bjarne Stroustrup之手。我將它們單列出來,首先是因為Bjarne是C++語言的創建者,然後是因為比「首先」那個原因更重要的原因:這兩本書是C++領域毋庸置疑的傑作。說它們是C++語言聖經,並不為過。
Bjarne Stroustrup, The C++ Programming Language (Special 3rd Edition)
《C++程序設計語言(特別版)》,機械工業出版社
《C++程序設計語言(特別版)(英文影印版)》,高等教育出版社
迄今為止,TCPL是除了C++標准文獻之外最權威的C++參考手冊。和大多數人的看法不大一樣,我認為Bjarne的文字語言並不遜色於他所創建的程序語言,至少我喜歡這種學院氣息濃厚的作品。本書對C++語言的描述輪廓鮮明、直截了當。它從C++語言創建者的角度來觀察C++,這是任何別的作者和書籍做不到的 — 沒有任何人比Bjarne自己更清楚該怎麼來使用C++。
這是一本嚴肅的著作,以中、高級C++開發人員為目標讀者。如果你是一名有經驗的C++程序員,需要了解更加本質的C++知識,本書正是為你而寫。它不是那種讓你看了會不斷竊喜的小書,需要用心體會,反復咀嚼。在閱讀過程中,請特別留心Bjarne先生強調了什麼,又對什麼一語帶過。我個人比較喜歡這本書的第四部分「使用C++做設計」,這樣的內容在類似的程序設計語言書籍中很難看到 — 我甚至認為Bjarne應該將這部分獨立出來單獨寫一本書。
Bjarne Stroustrup, The Design and Evolution of C++
《C++語言的設計和演化》,機械工業出版社
《C++語言的設計和演化(英文版)》,機械工業出版社
D&E是一本關於C++語言設計原理、設計決策和設計哲學的專著。它清晰地回答了C++為什麼會成為今天這個樣子而沒有變成另外一種語言。作為C++語言的創建者,Bjarne淋漓盡致地展示了他獨到而深刻的見解。除了廣受贊譽的語言特性外,Bjarne沒有迴避那些引起爭議的甚至被拒絕的C++特性,他一一給出了邏輯嚴密、令人信服的解釋。內容涵蓋C++的史前時代、帶類的C、C++的設計規則、標准化、庫、內存管理、多重繼承、模板等,對包括異常機制、運行時類型信息和名字空間在內的重要的新特性都分別進行了深入探討。每一名C++程序員都應該可以從Bjarne的闡釋中加深對手中這門語言的認識。
需要再次提醒的是,這兩本書知識濃縮,信息量極大,請不要錯過Bjarne每一句看似漫不經意的話。
入門教程
學習任何一門語言都需要一個從入門到精通、從新手到高手循序漸進的過程。不過,對於一個所謂的新手而言,究竟是一個完完全全的新手,還是一個熟悉某種別的語言的「新手」,甚至是在某種語言程序設計領域已經頗有建樹的高手,很難一概而論?不同的C++新手需要不同的入門書籍。
Andrew Koenig, Barbara E. Moo, Accelerated C++: Practical Programming by Example
《Accelerated C++中文版》,中國電力出版社
和市面上大多數C++教程不同,本書不是從「C++中的C」開始講解,而是始於地道的C++特性。從一開始就使用標准庫來寫程序,隨著講述的逐漸深入,又一一解釋這些標准庫組件所依賴的基礎概念。另外,和其他C++教材不同的是,這本書以實例拉動語言和標准庫的講解,對後兩者的講解是為了給實常式序提供支持,而不是像絕大多數C++教材那樣,例子只是用作演示語言特性和標准庫用法的輔助工具。
作者在C++領域的編程實踐、教育培訓以及技術寫作方面都是世界一流水準。我喜歡這種大量使用標准庫和C++語言原生特性的清新的寫作風格。在這本教材面前,幾乎迄今為止的所有C++教材都黯然失色或顯得過時。盡管這本教材也許對於國內的高校教育來說有些前衛,不過我仍然極力向我的同行們推薦。順帶一提,在Bjarne和我最近的一封通信里,他這樣評價本書:對於有經驗的程序員學習C++而言,這本書可能是世界上最好的一本。
Stanley B.Lippman, Josee Lajoie, C++ Primer (3rd Edition)
《C++ Primer (3RD)中文版》,中國電力出版社
這本書的名字多少有點讓人誤解。盡管作者聲稱這本書是為C++新手而寫,但無論是它的厚度還是講解的深度都暴露了似乎並非如此。也許說它是一本「從入門到精通」的C++教程會更合適一些。我個人認為它並不適合完全不懂C++的初學者 — 在閱讀這本書之前,你至少應該先有那麼一點C或C++的背景知識,或者至少要具有一些其他語言的編程經驗。
盡管這本書省略了一些高級C++特性的討論,但仍然可以稱得上是迄今為止最全面的C++學習教程。事實上,如果一名C++初學者能夠扎扎實實地讀完本書並對照《C++ Primer Answer Book》完成全部習題的話,他的水平肯定可以進入職業C++程序員的行列。我個人認為,即使你已經擁有了TCPL,這本書依然有擁有的價值,因為在許多方面它比TCPL來得更詳細、更易懂。
Stanley B. Lippman, Essential C++
《Essential C++中文版》,華中科技大學出版社
《Essential C++(影印版)》,中國電力出版社
可以不太嚴格地認為這本書是《C++ Primer》的精簡版。本書一一講述了C++中最具代表性的主題,包括過程式編程、泛型編程、基於對象編程、面向對象編程、模板編程以及異常處理等。Stanley將門檻調低到「具有其他語言程序設計經驗」的C++新手所能接受的最基本的層次,使他們能夠迅速開始使用C++編程而又免於閱讀《C++ Primer》那樣的大部頭。它以實例引導學習,力圖使讀者在最短的時間內把握C++的精粹。
也許換一個人來概述C++編程范型(paradigm)的方方面面需要好幾百頁才能說清楚,但這本小書不可思議地做到了這一點。我個人非常喜歡這種滿是技術、簡明扼要並且「有話好好說」的書。這本書同樣具有一個明顯的風格:所有程序例子全部採用標准庫組件,讓人耳目一新。
以上三本書都不是為了完完全全的編程新手而寫。完全的C++編程新手可以閱讀Francis Glassborow的新書(尚未出版):《You Can Do It!: A Beginner's Introction to Computer Programming》。這也是Bjarne的推薦。Francis Glassborow是ACCU主席,多年來他對幾乎每一本C++經典名著評頭論足,他自己的這一本自然會引起C++社群的極大興趣。
高效、健壯編程
兩年前我在負責一個省級電力調度系統項目時編寫了一個網關程序,它從SCADA系統獲取電力實時信息。通訊介面採用了不常用的資料庫直連方式(這個網關程序一端連接SQL Server 6.5,另一端連接Oralce 8.1.6)。由於實時測點近萬,每次將全部取樣更新或插入一遍顯然是低效的。我在網關程序里建了一個內存庫,獲取到的數據首先在其中進行比較,然後決定是否更新物理資料庫(同時還做了別的更復雜的事情……),從而在效率和資源佔用兩方面達到了預期效果。
這個程序一直運行得很好,但在離開現場之後的某一天,系統管理員打來電話,說大概因為網路故障等原因,有時這個網關程序會崩潰掉 — 它自己崩掉也就罷了,問題是它還會把Windows 2000 Advanced Server搞成「藍屏」!坦白地說,我還從來沒看過哪個非蓄意的程序有這個「能耐」。由於當時正忙於另外一個大項目,無法去現場調試,最後只有憑經驗對內存庫代碼小心翼翼地封裝以異常處理代碼(同時也做了一些別的修改……)。這樣,雖然沒有徹底解決問題,但程序終究不再死得那麼難看了。
在這兒講這么一段花絮有什麼意思呢(當初為那個可怕的bug朝思暮想時我可不認為這是一個「花絮」)?我想說的是,對於任何軟體而言,離開強健,效率也就無從談起。而對於C++程序員來說,也許編寫一個高效的程序並不難,但要編寫一個需要7 ⅹ 24小時持續運行的服務端軟體就不是那麼容易了,需要考慮許多因素,有時這些因素甚至遠遠超出C++語言和開發工具的本身。作為一名開發實際項目軟體的程序員,並非非得自己碰釘子才能積累經驗,只要我們足夠虛心,別人的經驗往往都是我們很好的借鑒。鑒於此,我推薦以下幾本書供你選讀,它們可以讓你從強健和效率兩方面受益(當然了,它們涵蓋的內容遠不限於異常處理J)。
Scott Meyers, Effective C++: 50 Specific Ways to Improve Your Programs and Design (2nd Edition)
Scott Meyers, More Effective C++: 35 New Ways to Improve Your Programs and Designs
《Effective C++中文版》,華中科技大學出版社
《More Effective C++中文版》,中國電力出版社
《Effective C++(影印版)》,中國電力出版社
如果說《Effective C++》主要討論C++中一些相對基礎的概念和技巧的話,那麼《More Effective C++》則著重探討了包括異常處理在內的一系列高級技術。與前者相比,後者具有兩大主要區別:其一,它包含很多時新的標准C++的內容;第二,它討論的主題傾向於「戰略化」而非「戰術化」,並且討論得更深入、更徹底。尤其是對虛析構函數、智能指針、引用計數以及代理類(proxy classe)等技術和模式論述的深入程度,讓人很難想像是出現於這樣的一本小書之中。游刃有餘的技術,高超的寫作技巧,Scott無疑是世界上最優秀的C++技術作家之一。在簡潔、清晰、易讀等方面,這兩本書都卓爾不群。總之,Scott提供的這85個可以改善編程技術和設計思維的方法,都是中、高級C++程序員必備的技能。我強烈推薦這兩本書(實際上還有一本,稍後就會看到)。
Herb Sutter, Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions
Herb Sutter, More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions
《Exceptional C++中文版》,中國電力出版社
《More Exceptional C++中文版》,華中科技大學出版社
你自認為是一名C++語言專家嗎?讀一讀ISO C++標准委員會秘書長的這兩本書再回答。在這兩本書中,Herb採用了「問答」的方式指導你學習C++語言特性。對於每一個專題,Herb首先合理地設想出你的疑問和困惑,接著又猜測出你十有八九是錯誤的解答,然後給你以指點並提出最佳解決方案,最後還歸納出解決類似問題的普適性原則。這兩本書是典型的深究C++語言細節的著作,很薄,但內容密集,遠遠超過Scott的那兩本書,讀起來很費腦筋 — 我個人認為它們要比Scott的書難懂得多。若要研習這薄薄的兩本書所包含的知識,至少需要花費數月的時間!(在Scott的薦序中,他坦陳不止一次陷入GotW問題的陷阱,你應該知道這意味著什麼)對於語言細節的深究有什麼好處呢?盡管在大多數情況下,我們不必關心C++代碼幕後的動作,然而當我們不得不關心時,這兩本書可以為我們提供很好的線索,因為它們揭示了C++語言中微妙而又至關重要的東西。
Stephen C. Dewhurst, C++ Gotchas: Avoiding Common Problems in Coding and Design
《C++程序設計陷阱》,中國青年出版社
Stephen的理論素養和實踐經驗註定這是一本值得一讀的好書。Stephen曾經是貝爾實驗室中第一批C++使用者。他已經使用C++成功解決了包括編譯器、證券交易、電子商務以及嵌入式系統等領域中的問題。本書匯集了作者來自開發一線的99條編程真知灼見,洞悉它們,你可以避免幾乎所有常見的C++設計和編程問題。
我甚至認為,對於C++編程菜鳥而言,閱讀這本書會比閱讀Scott和Herb的書更能輕松而立竿見影地獲得更大的提高。我個人很喜歡這本書的寫作風格 — Stephen的許多觀點看似極端卻無可辯駁。當然了,這種自信(以及冷幽默)來自於作者深厚的技術素養,而非自大的偏執。
除了上面推薦的書籍外,Dov Bulka和 David Mayhew合著的《Efficient C++: Performance Programming Techniques》(《提高C++性能的編程技術》,清華大學出版社)也值得一看。這本超薄小書聚焦於高性能C++應用程序開發。兩位作者都是IBM軟體專家,都工作於對性能要求極高的系統構建領域,本書是他們的經驗之談。也有人不喜歡這本書,因為它花了不少的篇幅講述和C++無關的東西,我卻恰恰因為這一點而對這本書產生好感,正是這些東西讓我開闊了眼界。模板和泛型編程
模板和基於模板的泛型編程無疑是當今發展最活躍的C++程序設計技術。模板的第一個革命性的應用是STL,它將模板技術在泛型容器和演算法領域的運用展現得淋漓盡致,而Boost、Loki等現代程序庫則將模板技術的潛能不斷發揮到極致。在模板和泛型編程領域,我推薦以下兩本重量級著作:
David Vandevoorde, Nicolai M. Josuttis, C++ Templates: The Complete Guide
《C++ Templates全覽(繁體版)》,台灣碁峰資訊股份有限公司
《C++ Templates全覽(簡體版)》,人民郵電出版社
有一種老套的贊美一本書的手法,大致是「沒有看過這本書,你就怎麼怎麼地」,這裡面往往誇張的成分居多。不過,倘若說「沒有看過《C++ Templates: The Complete Guide》,你就不可能精通C++模板編程」,那麼這個論斷對於世界上絕大多數C++程序員來說是成立的。
這本書填補了C++模板書籍領域由來已久的空白。此前,上有《Modern C++ Design》這樣的專注於模板高級編程技術和泛型模式的著作,下有《The C++ Standard Library》這樣的針對特定模板框架和組件的使用指南。然而,假如對模板機制缺乏深入的理解,你就很難「上下」自如。鑒於此,我向每一位渴望透徹理解C++模板技術的朋友推薦這本書。
這本書在內地、台灣各有一個譯本,但出自不同的譯者之手。當你看到這篇文章時,兩個譯本應該都已經上市,對於讀者來說當然也就多了一種選擇。侯捷先生個人網站上開放了繁體譯本大部分章節,不妨先睹為快。
Andrei Alexandrescu, Modern C++ Design: Generic Programming and Design Patterns Applied
《C++設計新思維:泛型編程與設計模式之應用》,華中科技大學出版社
《C++設計新思維(影印版)》,中國電力出版社
你自認為是C++模板編程高手嗎?請看過這本書再回答J 這是一本出自天才之手令人敬畏的傑作。泛型模式,無限延伸你的視野,足以挑戰任何一名C++程序員的思維極限。
這本書共分為兩大部分,第一部分討論了 Loki程序庫採用的基礎技術以及一些高級語言特性,包括基於策略的類設計、模板局部特化、編譯期斷言、Typelist以及小型對象分配技術等。第二部分則著重介紹了Loki中的重要組件和泛型模式技術,包括泛化仿函數(Generalization Functor)、單件(Singleton)、智能指針、對象工廠(Object Factory)、抽象工廠(Abstract Factory)、訪問者(Visitor)以及多方法(Multimethods)等。每一種技術都讓人大開眼界,嘆為觀止。
在C++的學習方面,過猶不及往往成了不求甚解的借口。然而,面向對象並非C++的全部,模板和泛型編程亦佔半壁江山。對於「嚴肅」的C++程序員而言,及時跟進這項早經例證的成功技術,不失為明智之舉。
結語
這些著作是如此大名鼎鼎,也許根本不缺我一個推薦。然而,縱然C++程序員隊伍的發展壯大速度不像其他更時髦的語言那樣迅速,新人進總是多於舊人出。除了熱忱地歡迎新人,我個人認為到了對C++書籍進行「盤點」的時候了,並且希望這樣的「盤點」有益於感興趣的讀者。請保持耐心和寬厚。在下篇中,我將繼續介紹標准庫、網路編程以及其他方面的C++好書。有好書相伴,這個冬天不會冷

㈥ 求比較好的C++編程的書,電子版的,發到[email protected] 謝謝

(一)語言入門:

《C++ Primer》
最新版本:第三版(第四版國外已上架,國內一些網上書店也在預訂中)
適合有豐富C經驗,缺乏C++經驗的。不過我個人一直認為此書帶著過於強烈的C語言的痕跡,對於C++的學習未必是好事。
《The C++ Programming Language》/《C++程序設計語言》
最新版本:第三版特別版
簡稱TC++PL,有其他語言的豐富經驗的。(也有人簡稱之為「TCPL」,但需與另一本《The C Programmer Language》區分開來)
《Essential C++》
《Accelerated C++》
這兩本薄一些,都是不錯的選擇。《Accelerated C++》本人沒有讀過,從各方面的評價來看,完全值得推薦。
以上幾本書都有相應的中文版,而且翻譯的質量都不錯。上面的書未必都需要讀一遍,但無論如何,TC++PL是應該閱讀的。

(二)進階A:
這個路線側重於語言本身
《Effective C++》
最新版本:第二版(第三版國外已上架,國內一些網上書店也在預訂中)
簡稱EC。C++程序員必讀!很多時候,我們說C++聖經不是指TC++PL,而是這一本。《The Pragmatic Programmer》一書中寫到:「一旦你發現自己要參與C++項目的開發,趕快跑(不要走)到書店去購買Scott Mayer的《Effective C++》,可能還要《More Effective C++》」。
《C++ Coding Standards: 101 Rules, Guidelines, and Best Practices》/《C++ 編程規范》
個人認為此書應為C++程序員必備的案頭書。幾乎Effective系列和Exceptional系列都在這里得到了總結。最新的模版、異常的業界經驗都在這里的到了體現。可能的唯一缺陷就是對一個新手而言,關於「為什麼這么做」的問題,解釋的不夠。
我的看法是:如果你不理解其中的條款,記憶,並且照做;如果你理解其中的條款,我猜你一定會同意書中的觀點。我認為這本書中的內容至少在2009年以前都不會過時,人們將廣為傳誦它制定的101條戒律。
還不知道他的簡稱,也許「101」會成為一個候選者?
提到《Effective C++》,那麼另外三本書一一浮出水面:
《More Effective C++》
《Exceptional C++》
《More Exceptional C++》。
新書《Exceptional C++ Style》也是值得一看的好書。
上述幾本書,一本也不應該放過。
個人建議上述書籍按順序閱讀。並且,在將來反復閱讀這幾本書。

(三)進階B:
這個路線側重於程序庫。
《The C++ Standard Library》/《C++標准程序庫—自修教程與參考手冊》
聽說過STL嗎?這本書會教你最基本的,也是最重要的STL的使用。這本書,應該是必讀的。
《Effective STL》
會使用STL還不夠,還必須知道什麼時候選擇什麼STL組件,這是STL使用的必讀書。
《Generic Programming and the STL: Using and Extending the C++ Standard Template Library》/《泛型編程與STL》。
這本書理論性較強,但是真的很嚴謹,而且並不是非常難懂。理解其中對於Concept的解釋,將是非常重要的。
《C++ STL》
這不是講述使用程序庫的,而是講述程序庫實現原理的。腸胃不好的,需要慢慢吸收。
這個路線的書,仍然是建議按順序閱讀。
進階A、進階B兩個路線應該是可以並行的。

其他進階參考書
提出這些參考書,只是避免爭議,也為開闊視野,筆者並不曾完全讀過所有的。
《Thinking in C++》/《C++編程思想》
這本書及其中文版傳言好壞都有,沒有認真看過,不做評價,如果確有興趣,不妨嘗試一下該書。
以下幾本書基本上涉及的都是語言本身,大體上可以按照以下的順序閱讀。
《C++必知必會》
如果早一年,這本書將是重量級的,然而它被101和《Exceptional C++ Style》蓋過一頭。
《C++ Gotchas: Avoiding Common Problems in Coding and Design》/《C++程序設計陷阱》
這又是一本我未曾讀過,而且廣受好評的書。
《STL 源碼剖析》
這本書我剛到手,就被人"借"走,以至於到現在也沒有看過。看過這本書的朋友,可以給一個合適的評價。
高級:
《The Design and Evolution of C++》/《C++語方的設計和演化》
簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。
前段時間,互動網曾8塊一本(人民幣)賤賣此書,現在好像沒了。
《Inside The C++ Object Model》/《深度探索C++對象模型》
C程序員讀後一定會覺得C++原來並不神秘。
《C++ Template》
在閱讀STL、Boost或者Loki的源代碼之前,請仔細閱讀本書,它可以減輕一些閱讀的煩惱。這本書是討論C++模版的權威。
《Modern C++ Design Generic Programming and Design Patterns Applied》/《C++設計新思維——泛型編程與設計模式之應用》
簡稱MCD。在閱讀MCD之前,建議先閱讀一下《C++ Template》。
《對象揭秘:Java、Eiffel和C++》
你對C++不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信C++。
最後,一份C++標准文檔也是應該加以咀嚼的。
還有一些書籍,並不能簡單的歸於C++,也難以在純粹的書本學習中加以掌握。《Design Patterns》/《設計模式》一書就歸於此類。
所有上述的書籍,要麼談論C++語言本身,要麼談論STL的,要麼兼而有之(當然嚴格講STL也是C++語言非常重要的一部分)。偶爾,某些書中條目也會涉及實際工程。這些書並不是C++軟體開發的全部,但是他們很重要。閱讀這些書,未必需要化費太多的精力,有時候是會困難,但也有時候會很快速。
最後,編程語言並非計算機科學技術的全部,尤其對於在校的學生來說,打好基礎、開闊視野都是非常重要的。

㈦ C++模板泛型書

模板和泛型編程

模板和基於模板的泛型編程無疑是當今發展最活躍的C++程序設計技術。模板的第一個革命性的應用是STL,它將模板技術在泛型容器和演算法領域的運用展現得淋漓盡致,而Boost、Loki等現代程序庫則將模板技術的潛能不斷發揮到極致。在模板和泛型編程領域,我推薦以下兩本重量級著作:

David Vandevoorde, Nicolai M. Josuttis, C++ Templates: The Complete Guide
《C++ Templates全覽(繁體版)》,台灣碁峰資訊股份有限公司
《C++ Templates全覽(簡體版)》,人民郵電出版社

有一種老套的贊美一本書的手法,大致是「沒有看過這本書,你就怎麼怎麼地」,這裡面往往誇張的成分居多。不過,倘若說「沒有看過《C++ Templates: The Complete Guide》,你就不可能精通C++模板編程」,那麼這個論斷對於世界上絕大多數C++程序員來說是成立的。

這本書填補了C++模板書籍領域由來已久的空白。此前,上有《Modern C++ Design》這樣的專注於模板高級編程技術和泛型模式的著作,下有《The C++ Standard Library》這樣的針對特定模板框架和組件的使用指南。然而,假如對模板機制缺乏深入的理解,你就很難「上下」自如。鑒於此,我向每一位渴望透徹理解C++模板技術的朋友推薦這本書。

這本書在內地、台灣各有一個譯本,但出自不同的譯者之手。當你看到這篇文章時,兩個譯本應該都已經上市,對於讀者來說當然也就多了一種選擇。侯捷先生個人網站上開放了繁體譯本大部分章節,不妨先睹為快。

Andrei Alexandrescu, Modern C++ Design: Generic Programming and Design Patterns Applied
《C++設計新思維:泛型編程與設計模式之應用》,華中科技大學出版社
《C++設計新思維(影印版)》,中國電力出版社

你自認為是C++模板編程高手嗎?請看過這本書再回答J 這是一本出自天才之手令人敬畏的傑作。泛型模式,無限延伸你的視野,足以挑戰任何一名C++程序員的思維極限。

這本書共分為兩大部分,第一部分討論了 Loki程序庫採用的基礎技術以及一些高級語言特性,包括基於策略的類設計、模板局部特化、編譯期斷言、Typelist以及小型對象分配技術等。第二部分則著重介紹了Loki中的重要組件和泛型模式技術,包括泛化仿函數(Generalization Functor)、單件(Singleton)、智能指針、對象工廠(Object Factory)、抽象工廠(Abstract Factory)、訪問者(Visitor)以及多方法(Multimethods)等。每一種技術都讓人大開眼界,嘆為觀止。

㈧ 本人正在學C和C++,但不知道C和C++都可以干點什麼,

這些書都很不錯。 轉載自博客 斑駁盛夏' Blog 原文地址: http://vir56k.blog.hexun.com/6105839_d.html (一)語言入門: 《 C++ Primer》 最新版本:第三版(第四版國外已上架,國內一些網上書店也在預訂中) 適合有豐富C經驗,缺乏 C++ 經驗的。不過我個人一直認為此書帶著過於強烈的C語言的痕跡,對於 C++ 的學習未必是好事。 《The C++ Programming Language》/《 C++ 程序設計語言》 最新版本:第三版特別版 簡稱T C++ PL,有其他語言的豐富經驗的。(也有人簡稱之為「TCPL」,但需與另一本《The C Programmer Language》區分開來) 《Essential C++ 》 《Accelerated C++ 》 這兩本薄一些,都是不錯的選擇。《Accelerated C++ 》本人沒有讀過,從各方面的評價來看,完全值得 推薦 。 以上幾本書都有相應的中文版,而且翻譯的質量都不錯。上面的書未必都需要讀一遍,但無論如何,T C++ PL是應該閱讀的。 (二)進階A: 這個路線側重於語言本身 《Effective C++ 》 最新版本:第二版(第三版國外已上架,國內一些網上書店也在預訂中) 簡稱EC。 C++ 程序員必讀!很多時候,我們說 C++ 聖經不是指T C++ PL,而是這一本。《The Pragmatic Programmer》一書中寫到:「一旦你發現自己要參與 C++ 項目的開發,趕快跑(不要走)到書店去購買Scott Mayer的《Effective C++ 》,可能還要《More Effective C++ 》」。 《 C++ Coding Standards: 101 Rules, Guidelines, and Best Practices》/《 C++ 編程規范》 個人認為此書應為 C++ 程序員必備的案頭書。幾乎Effective系列和Exceptional系列都在這里得到了總結。最新的模版、異常的業界經驗都在這里的到了體現。可能的唯一缺陷就是對一個新手而言,關於「為什麼這么做」的問題,解釋的不夠。 我的看法是:如果你不理解其中的條款,記憶,並且照做;如果你理解其中的條款,我猜你一定會同意書中的觀點。我認為這本書中的內容至少在2009年以前都不會過時,人們將廣為傳誦它制定的101條戒律。 還不知道他的簡稱,也許「101」會成為一個候選者? 提到《Effective C++ 》,那麼另外三本書一一浮出水面: 《More Effective C++ 》 《Exceptional C++ 》 《More Exceptional C++ 》。 新書《Exceptional C++ Style》也是值得一看的好書。 上述幾本書,一本也不應該放過。 個人建議上述 書籍 按順序閱讀。並且,在將來反復閱讀這幾本書。 (三)進階B: 這個路線側重於程序庫。 《The C++ Standard Library》/《 C++ 標准程序庫—自修教程與參考手冊》 聽說過STL嗎?這本書會教你最基本的,也是最重要的STL的使用。這本書,應該是必讀的。 《Effective STL》 會使用STL還不夠,還必須知道什麼時候選擇什麼STL組件,這是STL使用的必讀書。 《Generic Programming and the STL: Using and Extending the C++ Standard Template Library》/《泛型編程與STL》。 這本書理論性較強,但是真的很嚴謹,而且並不是非常難懂。理解其中對於Concept的解釋,將是非常重要的。 《 C++ STL》 這不是講述使用程序庫的,而是講述程序庫實現原理的。腸胃不好的,需要慢慢吸收。 這個路線的書,仍然是建議按順序閱讀。 進階A、進階B兩個路線應該是可以並行的。 其他進階參考書 提出這些參考書,只是避免爭議,也為開闊視野,筆者並不曾完全讀過所有的。 《Thinking in C++ 》/《 C++ 編程思想》 這本書及其中文版傳言好壞都有,沒有認真看過,不做評價,如果確有興趣,不妨嘗試一下該書。 以下幾本書基本上涉及的都是語言本身,大體上可以按照以下的順序閱讀。 《 C++ 必知必會》 如果早一年,這本書將是重量級的,然而它被101和《Exceptional C++ Style》蓋過一頭。 《 C++ Gotchas: Avoiding Common Problems in Coding and Design》/《 C++ 程序設計陷阱》 這又是一本我未曾讀過,而且廣受好評的書。 《STL 源碼剖析》 這本書我剛到手,就被人"借"走,以至於到現在也沒有看過。看過這本書的朋友,可以給一個合適的評價。 高級: 《The Design and Evolution of C++ 》/《 C++ 語方的設計和演化》 簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。 前段時間,互動網曾8塊一本(人民幣)賤賣此書,現在好像沒了。 《Inside The C++ Object Model》/《深度探索 C++ 對象模型》 C程序員讀後一定會覺得 C++ 原來並不神秘。 《 C++ Template》 在閱讀STL、Boost或者Loki的源代碼之前,請仔細閱讀本書,它可以減輕一些閱讀的煩惱。這本書是討論 C++ 模版的權威。 《Modern C++ Design Generic Programming and Design Patterns Applied》/《 C++ 設計新思維——泛型編程與設計模式之應用》 簡稱MCD。在閱讀MCD之前,建議先閱讀一下《 C++ Template》。 《對象揭秘:Java、Eiffel和 C++ 》 你對 C++ 不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信 C++ 。 最後,一份 C++ 標准文檔也是應該加以咀嚼的。 還有一些 書籍 ,並不能簡單的歸於 C++ ,也難以在純粹的書本學習中加以掌握。《Design Patterns》/《設計模式》一書就歸於此類。 所有上述的 書籍 ,要麼談論 C++ 語言本身,要麼談論STL的,要麼兼而有之(當然嚴格講STL也是 C++ 語言非常重要的一部分)。偶爾,某些書中條目也會涉及實際工程。這些書並不是 C++ 軟體開發的全部,但是他們很重要。閱讀這些書,未必需要化費太多的精力,有時候是會困難,但也有時候會很快速。 最後,編程語言並非計算機科學技術的全部,尤其對於在校的學生來說,打好基礎、開闊視野都是非常重要的。

㈨ C語言怎麼學

轉載
(一)語言入門:
《C++
Primer》
最新版本:第三版(第四版國外已上架,國內一些網上書店也在預訂中)
適合有豐富C經驗,缺乏C++經驗的。不過我個人一直認為此書帶著過於強烈的C語言的痕跡,對於C++的學習未必是好事。
《The
C++
Programming
Language》/《C++程序設計語言》
最新版本:第三版特別版
簡稱TC++PL,有其他語言的豐富經驗的。(也有人簡稱之為「TCPL」,但需與另一本《The
C
Programmer
Language》區分開來)
《Essential
C++》
《Accelerated
C++》
這兩本薄一些,都是不錯的選擇。《Accelerated
C++》本人沒有讀過,從各方面的評價來看,完全值得推薦。
以上幾本書都有相應的中文版,而且翻譯的質量都不錯。上面的書未必都需要讀一遍,但無論如何,TC++PL是應該閱讀的。
(二)進階A:
這個路線側重於語言本身
《Effective
C++》
最新版本:第二版(第三版國外已上架,國內一些網上書店也在預訂中)
簡稱EC。C++程序員必讀!很多時候,我們說C++聖經不是指TC++PL,而是這一本。《The
Pragmatic
Programmer》一書中寫到:「一旦你發現自己要參與C++項目的開發,趕快跑(不要走)到書店去購買Scott
Mayer的《Effective
C++》,可能還要《More
Effective
C++》」。
《C++
Coding
Standards:
101
Rules,
Guidelines,
and
Best
Practices》/《C++
編程規范》
個人認為此書應為C++程序員必備的案頭書。幾乎Effective系列和Exceptional系列都在這里得到了總結。最新的模版、異常的業界經驗都在這里的到了體現。可能的唯一缺陷就是對一個新手而言,關於「為什麼這么做」的問題,解釋的不夠。
我的看法是:如果你不理解其中的條款,記憶,並且照做;如果你理解其中的條款,我猜你一定會同意書中的觀點。我認為這本書中的內容至少在2009年以前都不會過時,人們將廣為傳誦它制定的101條戒律。
還不知道他的簡稱,也許「101」會成為一個候選者?
提到《Effective
C++》,那麼另外三本書一一浮出水面:
《More
Effective
C++》
《Exceptional
C++》
《More
Exceptional
C++》。
新書《Exceptional
C++
Style》也是值得一看的好書。
上述幾本書,一本也不應該放過。
個人建議上述書籍按順序閱讀。並且,在將來反復閱讀這幾本書。
(三)進階B:
這個路線側重於程序庫。
《The
C++
Standard
Library》/《C++標准程序庫—自修教程與參考手冊》
聽說過STL嗎?這本書會教你最基本的,也是最重要的STL的使用。這本書,應該是必讀的。
《Effective
STL》
會使用STL還不夠,還必須知道什麼時候選擇什麼STL組件,這是STL使用的必讀書。
《Generic
Programming
and
the
STL:
Using
and
Extending
the
C++
Standard
Template
Library》/《泛型編程與STL》。
這本書理論性較強,但是真的很嚴謹,而且並不是非常難懂。理解其中對於Concept的解釋,將是非常重要的。
《C++
STL》
這不是講述使用程序庫的,而是講述程序庫實現原理的。腸胃不好的,需要慢慢吸收。
這個路線的書,仍然是建議按順序閱讀。
進階A、進階B兩個路線應該是可以並行的。
其他進階參考書
提出這些參考書,只是避免爭議,也為開闊視野,筆者並不曾完全讀過所有的。
《Thinking
in
C++》/《C++編程思想》
這本書及其中文版傳言好壞都有,沒有認真看過,不做評價,如果確有興趣,不妨嘗試一下該書。
以下幾本書基本上涉及的都是語言本身,大體上可以按照以下的順序閱讀。
《C++必知必會》
如果早一年,這本書將是重量級的,然而它被101和《Exceptional
C++
Style》蓋過一頭。
《C++
Gotchas:
Avoiding
Common
Problems
in
Coding
and
Design》/《C++程序設計陷阱》
這又是一本我未曾讀過,而且廣受好評的書。
《STL
源碼剖析》
這本書我剛到手,就被人"借"走,以至於到現在也沒有看過。看過這本書的朋友,可以給一個合適的評價。
高級:
《The
Design
and
Evolution
of
C++》/《C++語方的設計和演化》
簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。
前段時間,互動網曾8塊一本(人民幣)賤賣此書,現在好像沒了。
《Inside
The
C++
Object
Model》/《深度探索C++對象模型》
C程序員讀後一定會覺得C++原來並不神秘。
《C++
Template》
在閱讀STL、Boost或者Loki的源代碼之前,請仔細閱讀本書,它可以減輕一些閱讀的煩惱。這本書是討論C++模版的權威。
《Modern
C++
Design
Generic
Programming
and
Design
Patterns
Applied》/《C++設計新思維——泛型編程與設計模式之應用》
簡稱MCD。在閱讀MCD之前,建議先閱讀一下《C++
Template》。
《對象揭秘:Java、Eiffel和C++》
你對C++不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信C++。
最後,一份C++標准文檔也是應該加以咀嚼的。
還有一些書籍,並不能簡單的歸於C++,也難以在純粹的書本學習中加以掌握。《Design
Patterns》/《設計模式》一書就歸於此類。
所有上述的書籍,要麼談論C++語言本身,要麼談論STL的,要麼兼而有之(當然嚴格講STL也是C++語言非常重要的一部分)。偶爾,某些書中條目也會涉及實際工程。這些書並不是C++軟體開發的全部,但是他們很重要。閱讀這些書,未必需要化費太多的精力,有時候是會困難,但也有時候會很快速。
最後,編程語言並非計算機科學技術的全部,尤其對於在校的學生來說,打好基礎、開闊視野都是非常重要的。

㈩ c++ 的 stl windows sdk mfc wtl 這幾個部分應該怎麼學習啊

1.打牢C++的語言基礎。
2.STL是C++的標准庫,基於模板技術,結合泛型設計思想,是一套學習C++本身的很好的庫,但需要很好的C++語言功底。在一般的C++書籍中,都會有STL的章節,不過一般只是講如何應用它。在學習數據結構的時候,結合STL來學習容器和演算法,再好不過,推薦書籍《STL源碼剖析》(侯捷),如果你覺得需要掌握更深層次的模版技術並加強對模版的正確認識和了解,請看《C++ Templates中文版》。
3.對於windows sdk,你可以看《windows 程序設計》(Charles Petzold),裡面的例子全是用C寫就的,有了C/C++的基礎,這些例子都很簡單。跟著書本循序漸進,你會獲益良多。接下來,你可以看《windows核心編程》(Jeffrey Richter),裡面有很多高級技術,例子也用C++寫成。讀完這兩本書,你對windows環境下的編程就有了清晰的了解。
4.對於MFC,有了第三部的積累,小菜一碟。前提是第三部分你要掌握的非常良好。如果你初讀《MFC深入淺出》(侯捷),你可能會覺得有所困難,不過不要泄氣,硬著頭皮也要學完前幾章,待到你把前幾章弄通後,哈,後面的就很容易學下去了,而且充滿樂趣(對我而言是如此的)!
5.WTL,一個非常棒的Frame。你學好了模板,再結合你對MFC的了解,學習WTL再簡單不過了。WTL最好的一個地方在於,它是基於模版和多重繼承實現的。由於模版的特性,WTL所有的源代碼都在頭文件中,這些源碼正是學習WTL的最好方法。到了這個階段,你會覺得,看WTL源代碼是一件頗為享受的事情,因為你得以一窺它是如何實現與MFC同名的一些函數的。自然,這里有一本書(其實不能算書,是Code Project上的一系列文章的集合),叫做《WTL for MFC programmer》,有中文版。
關於其它,對於windows的高級技術COM/COM+,已經不是現今的主流技術了,《COM本質論》的作者也說在.net大行其道的今天,COM已經沒落了,但現在windows的很多關鍵部分仍在應用COM,谷歌地球的自定義編程也是COM方面的內容。簡單來說,COM是基於二進制防火牆的跨平台的技術,內容繁雜,你可以先看《COM技術內幕》,再看《COM本質論》,如果你感興趣的話。我當時光看COM中的聚合,就搞得頭大。
學完COM,你能幹什麼呢?還不到時候。接下來就到ATL(活動模板庫)了,它是基於COM的框架。具體的內容我也沒怎麼學,我倒是買了本《ATL技術內幕》,留待以後學習吧。
拋開windows,但看C++本身,有很多有趣的東西。我首推《C++模板元編程》,這是一本考驗耐性和智力的書。同時你必然就接觸到了Boost庫,這個庫的名氣很大,我就不贅述了。如果你有興趣,可以看看腳本語言與C++的混合編程(僅是個人推薦,看你興趣),其中之一就是Boost::Python和C++的混合編程(當然,Python是一種獨立的腳本語言,Boost::Python只是用於C++編程的)。
還有什麼呢,還是模板,依舊是泛型編程。先提一個項目,「大芒果」,魔獸世界的網路變「單機」的伺服器。裡面應用到了很多這本書介紹的技術:《C++設計新思維-泛型編程與設計模式之應用》。當然,對於這么大一個項目,這只是冰山一角。
還有嗎?當然,數之不盡……

閱讀全文

與c設計新思維泛型編程與設計模式之應用相關的資料

熱點內容
51單片機藍牙傳送到手機 瀏覽:68
使用hmcl壓縮包用完不保存 瀏覽:265
php開啟phpfpm 瀏覽:655
看pdf常亮 瀏覽:835
麒麟系統如何用命令新建文件夾 瀏覽:134
php判斷是手機訪問還是電腦訪問 瀏覽:607
python停車系統收費模塊 瀏覽:804
哪個app可以約大巴車 瀏覽:183
linux中seq命令 瀏覽:829
代理伺服器的地址埠號碼 瀏覽:165
程序員給領導提意見 瀏覽:463
哪裡可以看夏木的電影app 瀏覽:454
如何辨別原裝數據線安卓 瀏覽:631
手機pc游戲解壓教程 瀏覽:696
安卓怎麼設置高清動態壁紙 瀏覽:777
古劍七存檔文件夾 瀏覽:376
mom伺服器下載文件命令 瀏覽:277
office編程教程 瀏覽:672
為何稱加密鎖為加密狗 瀏覽:558
阿里雲伺服器遠程異常 瀏覽:290