《C++編程關鍵路徑——程式設計師求職指南》是2010年中國水利水電出版社出版的圖書,作者是梁永軍。
基本介紹
編輯推薦,內容簡介,目錄,
編輯推薦
本書編寫的目的就是,通過筆者十幾年的C++編程經驗,讓C++求職者、C++初學者和C++程式設計師知道自己在即將或已經從事的C++實際開發工作中,需要掌握哪些知識,並期望可以通過本書更快、更好、更深入地掌握C++知識,以便在提高水平的同時,謀求一份合適的工作和更高的薪水。在某種角度看來,這本書更像一本C++求職指南。
內容簡介
本書把C++知識按照實際開發工作的需要,分為C語言、C++和STL等3部分,共分10章,主要講解C++在實際工作中需要掌握的知識、需要掌握多深,確保C++程式設計師在學習和工作中少走彎路,打下紮實的C++基本功。
本書適合大學計算機相關專業的學生、C++初學者、C++實際開發經驗較少的程式設計師和實際開發經驗只有2~3年的程式設計師。本書是C++程式設計師的求職和工作指南,是大學院校學生學習C++不可多得的輔助教材。同時,C語言部分的講解,也是C程式設計師必備的教材。
總之,本書通過作者多年的編程經驗,講解了C/C++程式設計師在實際工作中需要掌握的知識,是C/C++程式設計師求職和謀求更高薪水的指南。
目錄
前言
第1章 C語言關鍵知識
1.1 C語言知識
1.2 C語言的核心:函式、變數和指針
1.2.1 C語言測試程式
1.2.2 記憶體存儲
1.2.3 程式解答
1.2.4 常量和指針
1.2.5 臨時對象
1.2.6 被輕視的數據類型
1.2.7 小結
1.3 蘊藏豐富的Hello World程式
1.3.1 開始Hello World
1.3.2 預處理
1.3.3 控制台
1.3.4 調試
1.3.5 雜項
第2章 關鍵算法和數據結構
2.1 掌握算法的前提Ⅰ:單鍊表
2.1.1 線性表
2.1.2 單鍊表
2.1.3 單鍊表創建算法
2.1.4 單鍊表查找算法
2.1.5 單鍊表刪除算法
2.1.6 單鍊表插入算法
2.2 掌握算法的前提Ⅲ.循環鍊表
2.2.1 循環鍊表創建算法
2.2.2 循環鍊表查找算法
2.2.3 循環鍊表刪除算法
2.2.4 循環鍊表插入算法
2.3 被初學者忽視被資深者推崇的:雙向鍊表
2.3.1 雙向鍊表創建算法
2.3.2 雙向鍊表查找算法
2.3.3 雙向鍊表刪除算法
2.3.4 雙向鍊表插入算法
2.3.5 雙向循環鍊表
2.4 高手的摯愛:充分理解“樹”
2.4.1 樹的基本概念
2.4.2 二叉樹
2.4.3 線索二叉樹
2.5 幾棵最重要的“樹”
2.5.1 表達式樹
2.5.2 二叉排序樹
2.5.3 平衡二叉樹
2.5.4 紅黑樹
2.5.5 堆
2.6 最需要掌握的排序算法和查找算法
2.6.1 插入排序
2.6.2 選擇排序
2.6.3 交換排序
2.6.4 歸併排序
2.6.5 需要掌握的查找算法
第3章 記住C語言的常用庫函式
3.1 庫函式的使用
3.1.1 使用MSDN
3.1.2 熟練使用庫函式
3.2 常用庫函式
3.2.1 stdlib.h
3.2.2 stdio.h
3.2.3 math.h
3.2.4 ctype.h
3.2.5 string.h
3.2.6 malloc.h
第4章 開始學習C++
4.1 C++語言知識體系
4.2 預處理
4.2.1 常見的預處理
4.2.2 注意#pragma pack
4.2.3 其他需要知道的預處理宏
4.3 函式
4.3.1 聲明和定義函式、函式原型
4.3.2 記住:函式聲明前面的壓棧聲明
4.3.3 必須理解:傳值調用和傳址調用
4.3.4 儘量採用傳址調用(傳指針或傳引用)來代替傳值調用
4.3.5 內聯(inline)函式
4.3.6 知道:函式重載
4.3.7 理解extern”C”
4.3.8 理解函式指針
4.3.9 專家的最愛:回調函式
4.3.10 namespace命名空間
4.3.11 STL的基礎:函式模板
第5章 C++類和繼承
5.1 快速了解類的基本概念
5.1.1 類和類對象的定義
5.1.2 靜態成員
5.1.3 友元
5.1.4 局部類和嵌套類
5.1.5 類模板
5.2 真正走入C++:類的構造和析構
5.2.1 new/delete和malloc/free以及定位new
5.2.2 構造函式和析構函式
5.2.3 默認構造函式
5.2.4 類的拷貝構造函式
5.2.5 在含有指針數據成員的時候構建自己的拷貝構造函式
5.2.6 類的賦值和拷貝構造函式必須同時設計,儘量用拷貝構造來代替賦值
5.2.7 類的成員初始化表
5.3 C++九鼎之器:類的繼承
5.3.1 繼承和派生
5.3.2 記住常用的繼承關係是公有繼承
5.3.3 構造函式、析構函式在繼承關係中調用的優先順序
5.3.4 多繼承
5.4 C++虛函式
5.4.1 虛函式
5.4.2 靜態聯編和動態聯編
5.4.3 記住父類的析構函式必須是:虛的析構函式
5.4.4 再談多繼承
5.4.5 純虛函式和抽象類
5.5 高級話題:虛擬繼承和虛基類
第6章 走入STL
6.1 STL知識體系一覽
6.2 初窺STL
6.2.1 STL簡介
6.2.2 STL歷史
6.2.3 STL的5個版本
6.2.4 一個小程式——需要仔細理解
6.2.5 程式剖析
6.2.6 從容器開始
第7章 STL容器
7.1 用vector敲開STL的大門
7.1.1 vector概述
7.1.2 vector定義源碼
7.1.3 vector成員函式
7.1.4 vector數據結構說明
7.2 雙向循環鍊表list
7.2.1 list概述
7.2.2 list定義源碼
7.2.3 list成員函式
7.2.4 list數據結構說明
7.3 慎用deque
7.3.1 deque概述
7.3.2 deque定義源碼
7.3.3 deque成員函式
7.3.4 deque數據結構說明
7.4 deque的stack、queue與vector的priority_queue
7.4.1 stack概述
7.4.2 queue概述
7.4.3 priority—queue概述
7.4.4 小結
7.5 關聯容器
7.5.1 關聯容器概述
7.5.2 紅黑樹回顧
7.5.3 紅黑樹定義源碼
7.6 set
7.6.1 set概述
7.6.2 set定義源碼
7.6.3 set成員函式
7.6.4 set數據結構
7.7 map
7.7.1 map概述
7.7.2 map定義源碼
7.7.3 map成員函式
7.7.4 map數據結構
7.8 multiset和。multimap
7.8.1 multiset概述
7.8.2 multimap概述
第8章 疊代器iterator
8.1 最簡單的vector疊代器
8.2 list疊代器
8.3 其他容器的疊代器
8.4 初窺iterator適配器
8.5 疊代器分類
8.6 智慧型指針
第9章 配置器、函式對象和適配器
9.1 配置器allocator
9.1.1 初窺配置器
9.1.2 P.J.Plauger版本的配置器
9.1.3 SGI版本的配置器
9.2 函式對象functors/function obiects(又稱仿函式)
9.2.1 初窺函式對象
9.2.2 一元函式對象和二元函式對象
9.2.3 常用函式對象
9.3 適配器adapter(又稱配接器)
9.3.1 容器適配器container adapter
9.3.2 疊代器適配器iterator adapter
9.3.3 函式適配器function adapter
第10章 泛型算法algorithms
10.1 算法分類
10.2 算法中的疊代器
10.2.1 輸入疊代器Inputlterator
10.2.2 輸出疊代器Outputlterator
10.2.3 前向疊代器ForwardIterator
10.2.4 雙向疊代器Bidirectionallterator
10.2.5 隨機訪問疊代器RandomAccesslterator
10.3 常用算法