探索C++世界的旅遊地圖
生動有趣又不乏實用性
掌握C++世界的運作原理
學習C++世界“居民”的思考方式
自由地穿梭於現實世界和C++世界
雖然C++語言紛繁復雜的語法規則讓很多學習者望而卻步,但是,在本書中,你會發現C++語言的學習也可以如此輕鬆。本書沒有孔乙已式地去深究C++語言的語法細節,也沒有重點地去介紹各種高深的C++編程技巧,而是本著簡單實用的原則,通俗易懂地嚮你介紹C++中重要、實用的知識。看完本書,你會發現用邏輯控製語句可以把C++語句串珠成鏈;用函數實際上就是把程序裝進一個箱子;當C++語言愛上麵嚮對象思想就有瞭類與對象;算法就像體育老師,給我們帶來一堂彆開生麵的算法體育課。本書不再是一本枯燥乏味的C++語法介紹書,而是一本通俗易懂的C++故事書,可以讓我們在講故事中輕鬆學會C++語言。
第1篇 叩開c++世界的大門
第1章 c++世界地圖
1.1 c++是什麼
1.2 c++的前世今生
1.2.1 從b到c
1.2.2 從c到c++
1.2.3 從c++到.net framework的cli
1.2.4 最新標準c++0x讓c++重新煥發活力
1.2.5 c++和c#不得不說的那點事兒
1.2.6 c++世界的五大子語言
1.3 c++世界版圖
1.3.1 windows係統下的c++開發
1.3.2 linux係統下的c++開發
1.3.3 嵌入式係統下的c++開發
1.4 如何學好c++
1.4.1 將自然語言轉換為c++程序設計語言
1.4.2 "多讀多寫"是學好c++的不二法門
1.4.3 和google做朋友
第2章 與c++第一次親密接觸
2.1 一個c++程序的自白
2.1.1 用visual studio創建c++程序
2.1.2 以手工方式創建c++程序
2.1.3 c++程序=預編譯指令+程序代碼+注釋
2.1.4 編譯器和鏈接器
2.1.5 c++程序的執行過程
2.1.6 程序的兩大任務:描述數據與處理數據
2.2 基本輸入/輸齣流
2.2.1 標準的輸入和輸齣對象
2.2.2 輸齣格式控製
2.2.3 讀/寫文件
2.3 最常用的開發環境visual studio
2.3.1 visual c++的常用菜單
2.3.2 visual c++的常用視圖
2.4 c++世界旅行必備的物品
2.4.1 編程助手visual assist
2.4.2 代碼配置管理工具visual source safe
2.4.3 codeproject和codeguru
2.4.4 c++百科全書msdn
第2篇 歡迎來到c++世界
第3章 c++世界眾生相
3.1 c++中的數據類型
3.2 變量和常量
3.2.1 聲明變量
3.2.2 給變量取個好名字
3.2.3 變量初始化
3.2.4 常量
3.2.5 用宏與const關鍵字定義常量
3.3 數值類型
3.3.1 整型數值類型
3.3.2 浮點型數值類型
3.4 布爾類型
3.5 字符串類型
3.5.1 字符類型
3.5.2 字符串類型
3.6 數組
3.6.1 數組的聲明與初始化
3.6.2 數組的使用
3.7 枚舉類型
3.8 用結構體類型描述復雜的事物
3.8.1 結構體的定義
3.8.2 結構體的使用
3.9 指嚮內存位置的指針
3.9.1 指針就是錶示內存地址的數據類型
3.9.2 指針變量的定義
3.9.3 指針的賦值和使用
第4章 將語句編織成程序
4.1 用運算符對數據進行運算
4.1.1 用錶達式錶達設計意圖
4.1.2 算術運算符
4.1.3 賦值操作符
4.1.4 關係運算符
4.1.5 邏輯運算符
4.1.6 運算符之間的優先順序
4.1.7 將錶達式組織成語句
4.2 條件選擇語句
4.2.1 if語句
4.2.2 並列選擇的switch語句
4.3 循環控製語句
4.3.1 while循環
4.3.2 do…while循環
4.3.3 for循環
4.3.4 循環控製:break和continue
4.4 從語句到程序
4.4.1 程序是控製語句串聯起來的語句
4.4.2 豪華工資統計程序
第5章 用函數封裝程序功能
5.1 函數就是一個大"箱子"
5.1.1 函數的聲明和定義
5.1.2 函數調用機製
5.1.3 函數的聲明與函數調用
5.1.4 函數參數的傳遞
5.1.5 函數的返迴值
5.2 內聯函數
5.2.1 用體積換速度的內聯函數
5.2.2 內聯函數的使用規則
5.3 重載函數
5.3.1 重載函數的聲明
5.3.2 重載函數的解析
5.4 函數設計的基本規則
5.4.1 函數聲明的設計規則
5.4.2 函數體的設計規則
第6章 當c++愛上麵嚮對象
6.1 從結構化設計到麵嚮對象程序設計
6.1.1 "自頂嚮下,逐步求精"的結構化程序設計
6.1.2 麵嚮對象程序設計
6.1.3 麵嚮對象的三座基石:封裝、繼承與多態
6.2 類:當c++愛上麵嚮對象
6.2.1 類的聲明和定義
6.2.2 使用類創建對象
6.2.3 構造函數和析構函數
6.2.4 拷貝構造函數
6.2.5 操作符重載
6.2.6 類成員的訪問控製
6.2.7 在友元中訪問類的隱藏信息
6.3 類如何麵嚮對象
6.3.1 用類機製實現封裝
6.3.2 用基類和派生類實現繼承
6.3.3 用虛函數實現多態
6.4 實戰麵嚮對象:工資管理係統
6.4.1 從問題描述中發現對象
6.4.2 分析對象的屬性和行為
6.4.3 實現類的屬性和行為
6.5 高手是這樣煉成的
6.5.1 c++類對象的內存模型
6.5.2 指嚮自身的this指針
第7章 c++世界的奇人異事
7.1 一切指針都是紙老虎:徹底理解指針
7.1.1 指針的運算
7.1.2 靈活的void類型和void類型指針
7.1.3 指嚮指針的指針
7.1.4 指針在函數中的應用
7.1.5 引用
7.2 程序中的異常處理
7.2.1 異常處理
7.2.2 異常的函數接口聲明
7.2.3 閤理使用異常處理
7.3 編寫更復雜的c++程序
7.3.1 源文件和頭文件
7.3.2 名字空間
7.3.3 作用域與可見性
7.3.4 編譯預處理
7.4 高手是這樣煉成的
7.4.1 用宏定義化繁為簡
7.4.2 用typedef定義類型的彆名
7.4.3 用const保護數據
第3篇 攀登c++世界的高峰
第8章 用stl優雅你的程序
8.1 跟stl做朋友
8.1.1 算法 + 容器 + 迭代器 = stl
8.1.2 在程序中使用stl
8.1.3 stl到底好在哪裏
8.2 用模闆實現通用算法
8.2.1 函數模闆
8.2.2 類模闆
8.2.3 模闆的實例化
8.2.4 用模闆實現通用算法
第9章 stl中的容器管理數據
9.1 容器就是stl中的瓶瓶罐罐
9.1.1 操作容器中的數據元素
9.1.2 使用迭代器訪問容器中的數據元素
9.1.3 容器的使用說明書
9.1.4 如何選擇閤適的容器
9.2 vector容器是數組的最佳替代者
9.2.1 創建並初始化vector對象
9.2.2 vector容器的操作
9.2.3 訪問vector容器中的數據
9.3 可以保存鍵值對的map容器
9.3.1 創建並初始化map容器
9.3.2 將數據保存到map容器中
9.3.3 根據鍵找到對應的值
第10章 用stl中的通用算法處理數據
10.1 stl算法中的"四大幫派"
10.2 容器元素的查找與遍曆
10.2.1 用for_each()算法遍曆容器中的數據元素
10.2.2 用find()和find_if()算法實現綫性查找
10.3 容器元素的復製與變換
10.3.1 復製容器元素:copy()算法
10.3.2 閤並容器元素:merge()算法
10.3.3 變換容器元素:transform函數
10.4 容器元素的排序
10.4.1 使用sort()算法對容器中的數據進行排序
10.4.2 對排序的規則進行自定義
10.5 實戰stl算法
10.5.1 "算法"老師帶來的一堂彆開生麵的體育課
10.5.2 刪除容器中的冗餘元素
第11章 函數指針、函數對象與lambda錶達式
11.1 函數指針
11.1.1 函數指針的聲明與賦值
11.1.2 用函數指針調用函數
11.1.3 用函數指針實現迴調函數
11.1.4 將函數指針應用到stl算法中
11.2 函數對象
11.2.1 定義一個函數對象
11.2.2 利用函數對象記住狀態數據
11.3 用lambda錶達式編寫更簡單的函數
11.3.1 最簡單直接的函數錶達形式:lambda錶達式
11.3.2 lambda錶達式的語法規則
11.3.3 lambda錶達式的復用
第12章 c++世界的幾件新鮮事
12.1 用右值引用榨乾c++的性能
12.1.1 什麼是右值
12.1.2 右值引用在函數返迴值上的應用
12.1.3 stl算法中被浪費的右值
12.1.4 右值引用如何提高性能
12.2 智能指針shared_ptr
12.2.1 c++的內存管理
12.2.2 用聰明的shared_ptr解決內存管理問題
12.2.3 智能指針的應用場景
12.2.4 shared_ptr的使用
12.2.5 shared_ptr與標準庫容器
12.2.6 對shared_ptr進行自定義
12.3 用ppl進行多綫程開發
12.3.1 多核給程序設計帶來的挑戰
12.3.2 ppl帶來免費的午餐
12.3.3 ppl中的並行算法
12.3.4 ppl中的並行任務
12.3.5 ppl中的並行對象和並行容器
12.3.6 ppl之外的另一種選擇:openmp
第13章 找工作就靠它瞭
13.1 打好基礎
13.1.1 基本概念
13.1.2 函數
13.1.3 麵嚮對象思想
13.1.4 類與對象
13.1.5 stl
13.2 積纍經驗
13.3 考查智力
附錄a 接下來該讀什麼書
a.1 開山鼻祖:《c++程序設計語言》
a.2 初學者必看:《c++ primer中文版(第4版)》
a.3 百科全書:《代碼大全,第2版》
a.4 內功秘籍:《effective c++(third edition)》
a.5 經驗很重要:《c++編程規範》
後記
我一直在尋找一本能夠真正幫助我理解C++語言精髓的書,而不是一本僅僅羅列語法規則的工具書。當我在書店裏看到《我的第一本C++書(遊曆C++世界的地圖)》時,我立刻被它的標題所吸引。這個副標題“遊曆C++世界的地圖”給我一種強烈的暗示,這本書將會為我打開一扇通往C++世界的窗戶,讓我能夠以一種係統化的方式去探索這個復雜的領域。我希望這本書能夠像一張詳盡的地圖一樣,為我清晰地描繪齣C++的各個重要組成部分,並為我指明前進的方嚮。我期待它能夠幫助我理解C++的底層機製,比如內存管理、指針操作以及麵嚮對象編程的思想。更重要的是,我希望這本書能夠教會我如何將這些零散的知識點融會貫通,形成一套完整的C++知識體係。我希望通過閱讀這本書,能夠讓我不再感到迷茫,而是能夠充滿自信地迎接C++的學習挑戰,一步步深入理解這門強大而富有魅力的編程語言,真正成為一名能夠駕馭C++的開發者。
評分作為一個對編程充滿熱情,但又容易被技術細節壓垮的學習者,我看到《我的第一本C++書(遊曆C++世界的地圖)》這個標題時,內心真的泛起瞭陣陣漣漪。我一直在尋找一種能夠將C++的學習過程變得生動有趣,甚至帶點史詩感的方式,而“遊曆C++世界的地圖”這個說法,恰恰滿足瞭我的這種渴望。我設想這本書會把我當成一個初來乍到的旅者,為我介紹C++的各個“城鎮”,比如“函數之城”、“類與對象之鄉”、“模闆高原”等等,並為我規劃齣一條最適閤初學者探索的“旅行路綫”。我希望它能夠用引人入勝的語言,講述C++的曆史淵源,以及它在現代軟件開發中的重要地位。更重要的是,我期待這本書能夠提供一些“旅行指南”,比如如何規劃自己的學習路徑,如何在學習過程中遇到睏難時找到“休息站”和“補給點”,以及如何分辨那些“未開放區域”和“危險區域”。我希望它能讓我感受到學習C++的不是一場艱苦的跋涉,而是一次精彩的發現之旅,充滿瞭新奇和驚喜,而不是沉悶和枯燥。
評分我一直在尋找一本能夠真正帶我理解C++底層邏輯的書,而《我的第一本C++書(遊曆C++世界的地圖)》這個名字,讓我眼前一亮。我希望這本書能夠不僅僅停留在教我如何寫代碼的層麵,而是能夠深入淺齣地解釋C++的核心概念,比如內存管理、指針的本質、對象的生命周期等等。我曾經嘗試過一些其他的C++教材,但它們往往隻是羅列語法,而沒有觸及到這些“為什麼”。“遊曆C++世界的地圖”這個概念,讓我聯想到它會像一張精心繪製的地圖一樣,清晰地標注齣C++的各個區域,並詳細講解每個區域的特點和重要性。我希望它能讓我理解不同組件之間的關係,以及它們是如何協同工作的。更重要的是,我希望這本書能夠幫助我建立起一種“C++思維”,能夠讓我以後在遇到新的問題時,能夠用C++的視角去思考和解決。我知道C++的學習麯綫會比較陡峭,但如果有這樣一本能夠提供清晰指引的“地圖”,我相信我的學習過程會更加順暢和有效,也更有可能堅持下去,最終掌握這門強大的語言。
評分這本書的名字簡直太吸引人瞭——《我的第一本C++書(遊曆C++世界的地圖)》! 作為一名剛剛踏入編程世界的新手,我一直對C++這種強大的語言充滿瞭好奇,但也感到望而卻步。市麵上關於C++的書籍琳琅滿目,但很多都過於深奧,或者內容碎片化,讓我難以找到一條清晰的學習路徑。而“遊曆C++世界的地圖”這個副標題,瞬間就擊中瞭我的痛點。它讓我仿佛看到瞭一位經驗豐富的嚮導,將把我從C++的未知領域一步步引導齣來,教會我如何辨彆方嚮,如何識彆標誌性的“景點”,甚至如何避開那些隱藏的“陷阱”。我期待著這本書能給我帶來一種沉浸式的學習體驗,讓我不再是孤軍奮戰,而是能像一個真正的探險傢一樣,充滿探索的樂趣,而不是被枯燥的語法和晦澀的概念所淹沒。這本書的封麵設計也很有創意,色彩搭配鮮明,圖案也很生動,給人一種積極嚮上的感覺,讓我對這本書的整體風格充滿瞭期待。總的來說,這本書不僅僅是一本技術書籍,更像是一次充滿奇幻色彩的冒險邀請,我迫不及待地想翻開它,開啓我的C++探索之旅。
評分我是一名編程愛好者,一直對C++這門語言心生嚮往,但又覺得它門檻很高。在各種技術書籍中,《我的第一本C++書(遊曆C++世界的地圖)》這個書名格外吸引我,仿佛它不是一本冷冰冰的技術手冊,而是一次精心策劃的探險。我希望這本書能夠以一種非常生動和有趣的方式,為我揭示C++世界的全貌。我設想它會用一種“導遊”的口吻,帶領我“遊覽”C++的各個“景點”,比如“數據類型的小鎮”、“控製流的河流”、“函數的大峽榖”,甚至“麵嚮對象的大都市”。我希望它能夠用我能理解的語言,解釋那些抽象的概念,讓我在輕鬆愉快的氛圍中掌握C++的精髓。更重要的是,我期待它能夠給我提供一份“地圖”,讓我清楚地知道學習的重點在哪裏,以及如何一步步深入探索,最終能夠獨立地在C++的世界裏“暢遊”。我希望這本書能夠點燃我對C++學習的熱情,讓我覺得學習的過程本身就是一種享受,而不是一項艱巨的任務。
評分書寫的很好,可以學習!
評分2、適閤有經驗的人看,並不適閤初學者看,寫的比較的玄乎
評分正品,不錯的一次購物
評分不知道好不好。。。。沒看過。。。。
評分標簽:非計算機科班程序員必須
評分看外國的翻譯書籍總感覺怪怪的,這看本書就沒這種感覺瞭。。寫得很好。。嗬嗬。
評分看瞭還不錯 可以做入門參考
評分好
評分買來送給剛學的人。。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有