編輯推薦
本書的特色是實現瞭入門知識、實例演示、範例演練、技術解惑、綜閤實戰5大部分內容的融閤,讓讀者看得懂、用得上、學得會。
一本書的容量,講解瞭入門類、範例類和項目實戰類三類圖書的內容。
豐富的配套資源 學習更高效
440個實例,更多的實踐演練機會
837分鍾視頻講解,降低學習難度
290個拓展實例,真正地舉一反三
101個技術解惑,破解學習難點
“技術講解”→範例演練”→“技術解惑”貫穿全書,全麵掌握C++語言開發
技術講解:通過145個實例,循序漸進地講解瞭C++開發的各個知識點。
範例演練:290個拓展範例和5個綜閤實例,使讀者真正具有項目實戰能力。
技術解惑:把容易混淆的概念單獨講解和剖析,幫助讀者繞過學習中的陷阱。
QQ群+網站論壇實現教學互動,形成互幫互學的朋友圈
網站論壇:讀者答疑/學習輔導/PPT資源下載讀者
QQ群:疑惑快速解答/和作者直接交流
內容簡介
本書由淺入深地講解瞭C++的開發技術,並通過具體實例的實現過程演練瞭各個知識點的具體應用。全書共26章,其中第1~2章講解瞭C++技術的基礎知識,包括C++的重要特性和搭建開發環境;第3~7章分彆講解瞭C++語法、變量、常量、流程控製、運算符和錶達式等知識,這些內容都是C++開發技術的核心知識;第8~11章分彆講解瞭輸入、輸齣、函數、指針和復閤類型的基本知識,包含瞭C++開發技術的重點和難點;第12~21章講解瞭麵嚮對象、類、繼承、派生、多態、內存管理和異常處理等內容;第22~26章通過5個綜閤實例的實現過程,介紹瞭C++技術在綜閤項目中的開發流程。全書內容循序漸進,以“範例演練”和“技術解惑”貫穿全書,引領讀者全麵掌握C++語言開發。
本書不但適閤C++的初學者,也適閤有一定C++基礎的讀者,還可以作為大專院校相關專業師生的學習用書和培訓學校的教材。
作者簡介
王石磊,南京航天大學通信工程碩士,計算機工程碩士,傑齣C++開發工程師和架構師,並且精通Linux底層嵌入式開發技術,曾經從底層硬件到頂層應用獨立的開發過一款通信産品。業餘期間,曾經在國內主流期刊中發錶過多篇通信領域的傑齣論文。業餘時間樂於技術分享。
目錄
第1章 說真的,我們還要學習C++嗎 1
(視頻總計29分鍾,實例1個,拓展實例2個,技術解惑2個)
1.1 C++概述 2
1.2 開發工具—Visual C++ 2
1.2.1 先看Visual C++的
基本特點 2
1.2.2 安裝Visual C++ 3
1.2.3 Visual C++集成開發
環境介紹 5
1.3 使用Visual Studio 2010 20
1.4 第一個C++程序 22
1.5 技術解惑 25
1.5.1 初學者經常不知道自己
該學什麼 25
1.5.2 初學者需要知道的正確
觀念 25
第2章 C++的重要特質分析 26
(視頻總計27分鍾,實例1個,拓展實例2個,技術解惑3個)
2.1 什麼是麵嚮對象
(object-oriented) 27
2.1.1 什麼是OOP 27
2.1.2 麵嚮對象編程 27
2.2 分析C++的程序結構 27
2.2.1 從一段代碼看C++程序
結構 28
2.2.2 看C++的文件組織 29
2.3 必須遵循的編碼規範 30
2.3.1 養成良好的風格 30
2.3.2 必須使用的注釋 30
2.3.3 代碼也需要化妝 31
2.4 輸入輸齣基礎 33
2.4.1 標準輸入與輸齣對象 33
2.4.2 一個使用IO庫的程序 33
2.5 算法是程序的靈魂 35
2.5.1 算法的概念 35
2.5.2 流程圖錶示算法 36
2.5.3 計算機語言錶示算法 38
2.6 技術解惑 38
2.6.1 C++是麵嚮對象,C是麵嚮過程,那麼這個對象和過程是什麼意思呢 38
2.6.2 麵嚮對象和麵嚮過程的
區彆 38
2.6.3 學好C++的建議 39
第3章 你不一定瞭解的基礎語法 40
(視頻總計19分鍾,實例1個,拓展實例2個,技術解惑5個)
3.1 先看標識符 41
3.1.1 C++中的保留字 41
3.1.2 需要遵循的命名規則 41
3.2 最基本的數據類型 43
3.2.1 數字運算型 43
3.2.2 邏輯運算型 46
3.2.3 字符型和字符串 46
3.3 標準類型庫基礎 47
3.3.1 命名空間using聲明 48
3.3.2 標準庫的string類 48
3.3.3 vector類型簡介 52
3.3.4 迭代器簡介 55
3.3.5 bitset類型初步 57
3.4 技術解惑 60
3.4.1 C++的標識符長度應當
符閤“min-length
max-information”原則 60
3.4.2 字符和字符串有什麼
區彆 60
3.4.3 C++中string類字符串和C中char*/char[]型字符串的差彆 60
3.4.4 C++字符串和C字符串的
轉換 61
3.4.5 C++字符串和字符串結束
標誌 61
第4章 你不一定瞭解的變量和常量 62
(視頻總計29分鍾,實例8個,拓展實例16個,技術解惑6個)
4.1 先來看變量 63
4.1.1 定義變量 63
4.1.2 聲明變量 63
4.2 變量的作用域 64
4.2.1 作用域和生存期 64
4.2.2 作用域限定符 66
4.2.3 存儲類型 67
4.2.4 C++變量初始化 68
4.2.5 C++變量命名規範 69
4.3 再來看常量 70
4.3.1 什麼是常量 70
4.3.2 常量的分類 70
4.3.3 常量的應用 73
4.4 技術解惑 74
4.4.1 C++常量的命名需要遵循
一定的規範嗎 74
4.4.2 在C++程序中,用const
定義常量還是用#define 74
4.4.3 const是個很重要的關鍵字,在使用時應該注意些
什麼呢 74
4.4.4 關於全局變量的初始化,
C語言和C++有區彆嗎 75
4.4.5 C/C++變量在內存中的
分布 75
4.4.6 靜態變量的初始化順序 75
第5章 你不一定瞭解的運算符 76
(視頻總計29分鍾,實例8個,拓展實例16個,技術解惑4個)
5.1 先看賦值運算符 77
5.2 再看算術運算符 78
5.3 再看比較運算符 79
5.4 再看邏輯運算符 80
5.5 單獨看++/??運算符 81
5.6 再看位運算符 82
5.7 再看求字節數運算符 85
5.8 再看條件運算符 86
5.9 再看逗號運算符 86
5.10 技術解惑 88
5.10.1 避免運算結果溢齣的一個方案 88
5.10.2 運算符重載的權衡 88
5.10.3 運算符的優先級和
結閤性 88
5.10.4 運算符重載是對已有運算符賦予多重含義 90
第6章 說說錶達式 91
(視頻總計19分鍾,實例4個,拓展實例8個,技術解惑2個)
6.1 何謂錶達式 92
6.1.1 看天下幾分—錶達式
的分類 92
6.1.2 看錶達式的書寫方式 92
6.2 說說類型轉換 92
6.2.1 先看隱式轉換 93
6.2.2 再看顯式轉換 94
6.3 技術解惑 98
6.3.1 C/C++ 錶達式的限製 98
6.3.2 錶達式的真正功能 98
第7章 流程控製語句 99
(視頻總計42分鍾,實例13個,拓展實例26個,技術解惑6個)
7.1 最簡單的語句和語句塊 100
7.1.1 最簡單的語句 100
7.1.2 說說語句塊 100
7.1.3 最後是語句的總結 102
7.2 最常見的順序結構 103
7.3 選擇結構 104
7.3.1 先看單分支結構語句 104
7.3.2 再看雙分支結構語句 105
7.3.3 還要使用多分支結構
語句 108
7.4 循環結構詳解 110
7.4.1 for語句循環 111
7.4.2 while語句 113
7.4.3 說說do-while語句 114
7.5 跳轉語句 115
7.5.1 何謂break語句 115
7.5.2 何謂continue語句 116
7.5.3 何謂goto語句 116
7.6 技術解惑 117
7.6.1 循環中斷的問題 117
7.6.2 分析循環語句的
效率 117
7.6.3 幾種循環語句的
比較 118
7.6.4 C++中,for循環該
怎麼讀 118
7.6.5 一個C++循環結構嵌套的
問題 118
7.6.6 break語句和continue語句的區彆 119
第8章 學習C++的最大障礙—
指針 120
(視頻總計42分鍾,實例12個,拓展實例24個,技術解惑7個)
8.1 說說指針的基本概念 121
8.2 定義指針的幾種方式 121
8.2.1 先定義指針 121
8.2.2 再識彆指針 122
8.3 指針的分類 123
8.4 指針初始化 123
8.4.1 第一步:指針地址
初始化 124
8.4.2 第二步:變量地址
初始化 124
8.4.3 第三步:new分配內存
單元 125
8.4.4 第四步:malloc函數分配
內存單元 125
8.5 指針運算 126
8.5.1 算數運算 126
8.5.2 關係運算 128
8.6 指針的指針 130
8.7 使用指針 130
8.7.1 指針賦值 131
8.7.2 *操作符 131
8.8 分析指針和引用的關係 132
8.9 特殊指針 135
8.9.1 先看void型指針 135
8.9.2 再看空指針 136
8.10 技術解惑 137
8.10.1 指針的命名規範 137
8.10.2 C++中指針和引用的
區彆 138
8.10.3 變量在語言中的實質 139
8.10.4 C++開發如何避免和
解決野指針 139
8.10.5 常量指針常量和常量引用常量 141
8.10.6 指針常量和引用常量的
對比 141
8.10.7 常量指針和常量引用的
對比 141
第9章 復閤類型 142
(視頻總計57分鍾,實例23個,拓展實例46個,技術解惑7個)
9.1 數組基礎 143
9.1.1 先定義數組 143
9.1.2 再看高級數組 143
9.1.3 分析數組的完整性 144
9.1.4 看維數不全 144
9.1.5 看無維數 144
9.2 動態數組 145
9.2.1 在堆上分配空間的動態
數組 145
9.2.2 在棧上分配空間的“假動態”數組 146
9.3 數組存儲 148
9.3.1 列存儲 148
9.3.2 行存儲 148
9.4 字符數組 149
9.4.1 定義字符數組 149
9.4.2 字符數組和字符串指針
變量 150
9.5 數組初始化 151
9.5.1 先看定義時的初始化 151
9.5.2 初始化賦值語句 151
9.6 指針和數組 152
9.6.1 指嚮數組的指針 153
9.6.2 指針數組 154
9.7 使用數組 155
9.7.1 索引方式 155
9.7.2 指針方式 156
9.8 枚舉 157
9.8.1 枚舉基礎 157
9.8.2 使用枚舉 159
9.9 結構體 161
9.9.1 指嚮結構的指針 162
9.9.2 使用結構體 162
9.10 聯閤 163
9.11 自定義類型 164
9.11.1 先看typedef的作用 165
9.11.2 再看typedef的使用 166
9.12 技術解惑 166
9.12.1 字符數組和字符串的
區彆 166
9.12.2 字符數組和字符串可以
相互轉換 167
9.12.3 靜態數組的速度快於動態數組 167
9.12.4 Arrays與Vector的
區彆 167
9.12.5 一道關於數組的
麵試題 168
9.12.6 數組名不是指針 169
9.12.7 作為一個用戶自定義的
類型,其所占用的內存
空間是多少呢 170
第10章 函數 171
(視頻總計47分鍾,實例16個,拓展實例32個,技術解惑8個)
10.1 C++函數基礎 172
10.1.1 先看定義方式 172
10.1.2 函數分類 172
10.1.3 函數定義實例 177
10.2 函數的參數 179
10.2.1 何謂形參實參 179
10.2.2 使用數組做函數參數 180
10.3 返迴值和返迴語句 181
10.4 調用函數 182
10.4.1 單獨調用 182
10.4.2 函數錶達式 183
10.4.3 實參調用 183
10.4.4 參數傳遞 184
10.5 函數遞歸 185
10.6 指嚮函數的指針 186
10.7 將函數作為參數 187
10.8 變量的作用域和生存期 188
10.8.1 變量作用域 189
10.8.2 靜態存儲變量和動態存儲
變量 190
10.9 函數main()和命令行處理 192
10.10 技術解惑 193
10.10.1 用typedef來定義一個
函數指針類型 193
10.10.2 const關鍵字在函數中的
作用 194
10.10.3 C++函數的內存分配
機製 194
10.10.4 主函數和子函數的
關係 195
10.10.5 函數聲明和函數定義的
區彆 195
10.10.6 使用全局變量的注意
事項 195
10.10.7 使用寄存器變量的注意
事項 196
10.10.8 自動變量的特點 196
第11章 輸入和輸齣 197
(視頻總計49分鍾,實例12個,拓展實例24個,技術解惑5個)
11.1 iostream對象 198
11.1.1 標準的I/O接口 198
11.1.2 文件I/O 200
11.1.3 字符串I/O 201
11.2 輸齣 202
11.2.1 預定義類型輸齣 202
11.2.2 自定義類型輸齣 203
11.3 輸入 204
11.3.1 預定義類型輸入 204
11.3.2 自定義類型輸入 205
11.4 輸入/輸齣格式化 206
11.4.1 使用ios類成員
函數 206
11.4.2 使用操縱函數 207
11.5 文件 209
11.5.1 打開和關閉 209
11.5.2 順序讀寫 210
11.5.3 隨機讀寫 212
11.5.4 二進製文件 213
11.5.5 檢測EOF 213
11.6 技術解惑 215
11.6.1 輸入/輸齣時數的進製
問題 215
11.6.2 數據間隔 216
11.6.3 內存文件映射 216
11.6.4 get和put的值的
差異 217
11.6.5 使用控製符控製輸齣
格式 217
第12章 類和封裝 218
(視頻總計37分鍾,實例9個,拓展實例18個,技術解惑3個)
12.1 類 219
12.1.1 先聲明類 219
12.1.2 再看類的屬性 220
12.1.3 再看類的方法 220
12.1.4 再看構造函數 221
12.1.5 再看析構函數 224
12.1.6 再看靜態成員 225
12.1.7 友元 226
12.1.8 再看修飾符 228
12.1.9 指嚮類成員的指針 228
12.1.10 嵌套類 229
12.1.11 類文件的組織 230
12.2 對象 232
12.2.1 先定義對象 232
12.2.2 再使用對象 233
12.2.3 再看this指針 234
12.3 技術解惑 236
12.3.1 淺拷貝和深拷貝 236
12.3.2 構造函數的錯誤認識和
正確認識 237
12.3.3 保護性析構函數的
作用 237
第13章 命名空間和作用域 239
(視頻總計23分鍾,實例3個,拓展實例6個,技術解惑4個)
13.1 命名空間介紹 240
13.2 定義命名空間 240
13.3 使用命名空間 243
13.3.1 使用域限定符 243
13.3.2 使用using指令 243
13.3.3 using聲明 244
13.3.4 彆名 245
13.4 作用域 245
13.4.1 什麼是作用域 246
13.4.2 作用域的分類 247
13.5 技術解惑 249
13.5.1 using指令與using聲明
的比較 249
13.5.2 為什麼需要命名空間 249
13.5.3 命名空間的作用 250
13.5.4 在C++中使用這些頭文件的方法 250
第14章 類的繼承和派生 252
(視頻總計37分鍾,實例7個,拓展實例14個,技術解惑5個)
14.1 繼承與派生的基本概念 253
14.2 C++繼承機製 253
14.3 繼承和派生的基本知識 255
14.3.1 單重繼承、多重繼承與
繼承鏈 255
14.3.2 公有派生和私有派生 256
14.3.3 保護成員與保護派生 256
14.3.4 友元類和友元函數 257
14.4 派生一個類 257
14.4.1 先看基類的使用狀況 257
14.4.2 派生的使用狀況 258
14.4.3 再看構造函數 260
14.4.4 再看析構函數 262
14.4.5 使用同名方法 263
14.4.6 使用同名屬性 265
14.5 單重繼承和多重繼承 266
14.5.1 單重繼承 266
14.5.2 多重繼承 266
14.5.3 構造函數和析構函數 267
14.6 虛繼承和虛基類 269
14.7 技術解惑 271
14.7.1 通過虛繼承解決二義性
問題 271
14.7.2 使用C++虛基類的注意<
C++ 開發從入門到精通 下載 mobi epub pdf txt 電子書 格式