注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書教育/教材/教輔教材研究生/本科/??平滩?/a>C++程序設(shè)計實踐教程(新國標(biāo)微課版)

C++程序設(shè)計實踐教程(新國標(biāo)微課版)

C++程序設(shè)計實踐教程(新國標(biāo)微課版)

定 價:¥59.00

作 者: 馬光志
出版社: 華中科技大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787568094825 出版時間: 2023-07-01 包裝: 平裝
開本: 16開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書致力于從理論結(jié)合實戰(zhàn)的角度介紹C 的語法、標(biāo)準庫以及開發(fā)環(huán)境,結(jié)合知乎網(wǎng)站等出現(xiàn)的數(shù)千個C 學(xué)習(xí)與開發(fā)問題,將面向?qū)ο蟮慕<夹g(shù)同簡單的數(shù)學(xué)建模相結(jié)合,從而同時培養(yǎng)同學(xué)分析問題、解決問題的能力。本書的例題及習(xí)題注重趣味性,并同時與要介紹的C 概念巧妙結(jié)合,從而較好闡述了C 語法概念的使用背景,使得同學(xué)們在遇到新的類似的問題時,能夠恰當(dāng)?shù)睦肅 的相關(guān)概念解決問題。本教材采用的實驗環(huán)境為Microsoft Visual Studio Qt插件,該環(huán)境開發(fā)和發(fā)布的程序可以在windows、linux、android、ios、QNX、Embedded Linux等不同操作系統(tǒng)平臺及桌面和移動等不同環(huán)境運行,利用數(shù)學(xué)建模 面向?qū)ο蠼?圖形用戶界面三層模式。

作者簡介

  馬光志,湖北鐘祥人,博士,副教授。1985在大連理工大學(xué)獲計算機軟件學(xué)士學(xué)位,1988年在華中科技大學(xué)獲計算機軟件碩士學(xué)位,2009年獲華中科技大學(xué)計算機軟件博士學(xué)位,1997、2011年先后在美國North Illinois University、Kennesaw State University培訓(xùn)及訪問。主要研究方向為人工智能、圖像處理、深度學(xué)習(xí),曾發(fā)表國際期刊SCI論文25篇、國際會議發(fā)表論文10篇,國內(nèi)期刊會議論文30篇,出版教材5部,獲得授權(quán)發(fā)明專利1項,獲得6項軟件著作版權(quán)。主持與參加了近30個研究開發(fā)項目,包括國家自然科學(xué)基金1項,省自然科學(xué)基金1項,國家863及973共4項,國家重大研發(fā)計劃1項,中英國際合作及中加國際合作項目各1項,上海聯(lián)影橫向合作項目4項,以及與醫(yī)學(xué)圖像、醫(yī)院信息、衛(wèi)生監(jiān)管等相關(guān)的多個研究開發(fā)項目8項。曾參加C語言至8086匯編語言編譯器的研究與開發(fā)項目。獲得中國醫(yī)院科技創(chuàng)新獎1次,湖北省科技進步二等獎2次、三等獎1次。講授的課程主要包括數(shù)據(jù)開采與知識發(fā)現(xiàn)、面向?qū)ο蟪绦蛟O(shè)計、C 程序設(shè)計、Java程序設(shè)計、匯編語言程序設(shè)計,Lisp語言,Prolog語言,數(shù)據(jù)結(jié)構(gòu)等。

圖書目錄

第1章 C 引論 1
1.1 計算機的體系結(jié)構(gòu) 1
1.1.1 計算機系統(tǒng)的體系結(jié)構(gòu) 1
1.1.2 數(shù)據(jù)與機器指令的解析 3
1.2 進制及其轉(zhuǎn)換和運算 5
1.2.1 計算機采用二進制的原因 5
1.2.2 C 的常用進制及其運算 6
1.3 80x86系列匯編語言 8
1.3.1 匯編語言及C 編譯簡介 8
1.3.2 匯編指令及C 程序編譯 9
1.4 C 的發(fā)展歷史及特點 13
1.4.1 C 的發(fā)展歷史 14
1.4.2 C 的特點 14
1.5 語法圖與程序流程圖 15
1.5.1 C 的語法圖 15
1.5.2 程序流程圖 17
1.6 編譯環(huán)境的安裝與使用 18
1.6.1 編譯過程及編譯環(huán)境 19
1.6.2 Microsoft Visual Studio 2019的安裝 19
練習(xí)題 26
第2章 類型、常量及變量 27
2.1 C 的單詞 27
2.1.1 C 的字符集 27
2.1.2 C 的關(guān)鍵字 28
2.2 預(yù)定義類型及值域和常量 29
2.2.1 預(yù)定義類型及其數(shù)值轉(zhuǎn)換 29
2.2.2 強制類型轉(zhuǎn)換及類型值域 31
2.2.3 預(yù)定義類型及相關(guān)常量 33
2.3 變量及其類型解析 37
2.3.1 變量的聲明和定義 38
2.3.2 指針及其類型理解 41
2.3.3 有址引用變量 49
2.3.4 無址引用變量 55
2.3.5 元素、下標(biāo)及數(shù)組 57
2.4 運算符及表達式 60
2.4.1 位運算與等號運算 60
2.4.2 指針運算及其結(jié)合方向 61
2.4.3 關(guān)系運算及結(jié)果轉(zhuǎn)換 62
2.5 結(jié)構(gòu)與聯(lián)合 64
2.5.1 結(jié)構(gòu)體 64
2.5.2 聯(lián)合體 66
練習(xí)題 68
第3章 語句、函數(shù)及程序設(shè)計 70
3.1 C 的語句 70
3.1.1 簡單語句 70
3.1.2 轉(zhuǎn)移語句 71
3.1.3 分支語句及分支預(yù)選 73
3.1.4 循環(huán)語句 76
3.1.5 break和continue語句 80
3.1.6 asm和static_assert語句 81
3.2 C 的函數(shù) 82
3.2.1 函數(shù)聲明與定義 82
3.2.2 頭文件與聲明 84
3.2.3 函數(shù)的參數(shù)聲明 86
3.2.4 函數(shù)重載 88
3.2.5 inline、constexpr及consteval函數(shù) 90
3.2.6 線程互斥及線程本地變量 94
3.3 作用域 95
3.3.1 全局作用域與文件作用域 95
3.3.2 局部作用域與塊作用域 97
3.4 生命期 99
3.5 程序設(shè)計實例 101
3.5.1 棧編程實例 101
3.5.2 隊列編程實例 103
3.5.3 有限自動機編程實例 105
練習(xí)題 108
第4章 C 的類 110
4.1 類的聲明及定義 110
4.1.1 面向?qū)ο蟮幕靖拍?110
4.1.2 類及對象定義的實例 111
4.2 成員訪問權(quán)限及突破方法 115
4.2.1 成員的訪問權(quán)限 116
4.2.2 突破成員的訪問權(quán)限 117
4.3 內(nèi)聯(lián)、匿名類及位域 118
4.3.1 函數(shù)成員的內(nèi)聯(lián) 118
4.3.2 無對象的靜態(tài)匿名聯(lián)合 119
4.3.3 局部類及位域成員 121
4.4 new和delete運算符 122
4.4.1 簡單類型及單個對象內(nèi)存管理 122
4.4.2 復(fù)雜類型及對象數(shù)組內(nèi)存管理 124
4.5 隱含參數(shù)this 126
4.6 對象的構(gòu)造與析構(gòu) 128
4.6.1 構(gòu)造函數(shù)及對象初始化 128
4.6.2 成員默認值及構(gòu)造與析構(gòu) 130
4.7 類及對象的內(nèi)存布局 132
練習(xí)題 135
第5章 成員及成員指針 137
5.1 實例成員指針 137
5.1.1 實例成員指針的用法 137
5.1.2 實例成員指針的限制 139
5.2 const、volatile和mutable 140
5.2.1 const和volatile的用法 140
5.2.2 mutable實例數(shù)據(jù)成員 144
5.3 靜態(tài)數(shù)據(jù)成員 146
5.3.1 靜態(tài)數(shù)據(jù)成員的用法 146
5.3.2 靜態(tài)數(shù)據(jù)成員的限制 149
5.4 靜態(tài)函數(shù)成員 151
5.4.1 靜態(tài)函數(shù)成員的訪問 151
5.4.2 靜態(tài)函數(shù)成員的限制 152
5.5 靜態(tài)成員指針 153
5.5.1 靜態(tài)成員指針的用法 153
5.5.2 多種指針的混合用法 154
5.6 聯(lián)合的成員指針 155
練習(xí)題 157
第6章 繼承與構(gòu)造 160
6.1 單繼承類 160
6.2 繼承方式 162
6.2.1 繼承后成員的訪問權(quán)限 162
6.2.2 訪問權(quán)限的修改 165
6.3 成員訪問及其指針 166
6.4 構(gòu)造與析構(gòu) 168
6.4.1 對象構(gòu)造的執(zhí)行順序 168
6.4.2 new、delete引起的構(gòu)造與析構(gòu) 169
6.5 父類與子類 170
6.5.1 父類及其函數(shù)調(diào)用 170
6.5.2 友元和派生類函數(shù)中的父子類關(guān)系 172
6.6 派生類的內(nèi)存布局 174
練習(xí)題 175
第7章 可訪問性 178
7.1 作用域運算符 178
7.1.1 面向?qū)ο蟮淖饔糜?178
7.1.2 面向過程的作用域 181
7.2 名字空間 182
7.2.1 名字空間的基本用法 182
7.2.2 使用名字空間的注意事項 185
7.3 成員友元 187
7.3.1 成員友元的一般用法 188
7.3.2 互為依賴的類的友元 189
7.4 普通友元及其注意事項 190
7.4.1 普通友元的一般用法 191
7.4.2 友元使用的注意事項 193
7.5 覆蓋與隱藏 195
7.5.1 覆蓋與隱藏的用法 195
7.5.2 使用using避免數(shù)據(jù)成員覆蓋 196
7.6 同體與異體 198
練習(xí)題 199
第8章 多態(tài)與虛函數(shù) 203
8.1 虛函數(shù) 203
8.1.1 虛函數(shù)的聲明及定義 203
8.1.2 虛函數(shù)的重載及內(nèi)聯(lián) 205
8.2 虛析構(gòu)函數(shù) 209
8.3 類的引用 210
8.3.1 類的引用變量及其析構(gòu) 211
8.3.2 類的引用參數(shù)及其析構(gòu) 213
8.4 抽象類 217
8.4.1 抽象類的定義及用法 217
8.4.2 抽象類的應(yīng)用實例 218
8.5 虛函數(shù)友元與晚期綁定 221
8.5.1 虛函數(shù)作為友元 221
8.5.2 虛函數(shù)的晚期綁定 222
8.6 有虛函數(shù)時的內(nèi)存布局 223
練習(xí)題 225
第9章 多繼承與虛基類 227
9.1 多繼承類 227
9.1.1 無多繼承的替代方案 227
9.1.2 多繼承存在的問題 228
9.2 虛基類 230
9.3 派生類成員 232
9.3.1 無虛基類時的成員同名 232
9.3.2 有虛基類時的成員同名 233
9.4 單重及多重繼承的構(gòu)造與析構(gòu) 234
9.4.1 單繼承的構(gòu)造與析構(gòu) 234
9.4.2 多繼承的構(gòu)造與析構(gòu) 236
9.5 多繼承類的內(nèi)存布局 237
9.5.1 無虛基類時的內(nèi)存布局 237
9.5.2 有虛基類時的內(nèi)存布局 239
練習(xí)題 242
第10章 異常與斷言 245
10.1 異常處理 245
10.1.1 拋出與捕獲 245
10.1.2 異常的傳播 247
10.2 捕獲順序 248
10.3 函數(shù)的異常接口 249
10.3.1 異常接口聲明 250
10.3.2 noexcept接口 251
10.4 異常類型 253
10.5 異常對象的析構(gòu) 254
10.5.1 通過對象指針析構(gòu) 254
10.5.2 未完成對象的析構(gòu) 256
10.6 斷言 257
練習(xí)題 259
第11章 運算符重載 260
11.1 運算符概述 260
11.1.1 結(jié)果為左值的運算符 260
11.1.2 運算符重載的分類 261
11.1.3 成員重載與非成員重載 262
11.2 運算符參數(shù) 263
11.2.1 自增與自減的重載 264
11.2.2 重載運算符-> 265
11.2.3 單雙目運算符的重載 266
11.3 賦值與調(diào)用 268
11.3.1 賦值運算符的重載 268
11.3.2 構(gòu)造函數(shù)的重載 271
11.3.3 安全的編程方法 272
11.4 類型轉(zhuǎn)換與內(nèi)存管理 273
11.4.1 單個顯式參數(shù)構(gòu)造函數(shù) 274
11.4.2 強制類型轉(zhuǎn)換重載函數(shù) 275
11.4.3 重載new和delete 276
11.5 重載<=>、[]及文本運算符 278
11.5.1 重載<=>運算符 278
11.5.2 重載[]運算符 280
11.5.3 重載文本運算符 281
11.6 運算符重載實例 282
11.6.1 符號表運算的重載實例 282
11.6.2 棧及隊列運算重載實例 284
練習(xí)題 289
第12章 類型解析、轉(zhuǎn)換與推導(dǎo) 295
12.1 隱式與顯式類型轉(zhuǎn)換 295
12.1.1 簡單類型的隱式轉(zhuǎn)換 295
12.1.2 簡單類型的顯式轉(zhuǎn)換 297
12.1.3 簡單類型的轉(zhuǎn)換結(jié)果 298
12.2 cast系列類型轉(zhuǎn)換 302
12.2.1 static_cast——靜態(tài)轉(zhuǎn)換 302
12.2.2 const_cast——只讀轉(zhuǎn)換 303
12.2.3 dynamic_cast——動態(tài)轉(zhuǎn)換 306
12.2.4 reinterpret_cast——重釋轉(zhuǎn)換 310
12.3 類型轉(zhuǎn)換實例 312
12.3.1 typeid獲取類型標(biāo)識 313
12.3.2 explicit要求顯式調(diào)用 314
12.3.3 棧的類型轉(zhuǎn)換實例 316
12.4 自動類型推導(dǎo) 318
12.4.1 auto的一般用法 319
12.4.2 auto用于函數(shù)、數(shù)組、列表和結(jié)構(gòu) 320
12.4.3 表達式類型的提取decltype 322
12.5 Lambda表達式 324
12.5.1 Lambda表達式的聲明 324
12.5.2 Lambda表達式的參數(shù) 327
12.5.3 準函數(shù)Lambda表達式 331
練習(xí)題 334
第13章 模板、模塊、概念、協(xié)程 335
13.1 變量模板及其實例 335
13.1.1 變量模板的定義 335
13.1.2 變量模板的實例化 336
13.2 函數(shù)模板 337
13.2.1 函數(shù)模板的定義 337
13.2.2 成員函數(shù)模板的定義 339
13.2.3 可變類型參數(shù)及折疊表達式 340
13.3 函數(shù)模板實例化 343
13.3.1 函數(shù)模板強制實例化 343
13.3.2 函數(shù)模板實例特化 344
13.3.3 涉及指針的模板實例化 345
13.4 類模板及模板別名 346
13.4.1 類模板及模板別名定義 346
13.4.2 派生類類模板的定義 347
13.4.3 多類型參數(shù)的類模板 348
13.4.4 省略參數(shù)的類模板 349
13.4.5 類模板的友元及Lambda表達式 351
13.5 類模板的實例化及特化 354
13.5.1 類模板的實例化 354
13.5.2 類模板實例特化 354
13.5.3 類模板的部分特化 357
13.5.4 實例化與類型推導(dǎo) 359
13.5.5 類模板及實例成員指針 360
13.5.6 模板分隔符的二義性 361
13.5.7 類模板與泛型 362
13.6 模塊、概念、協(xié)程 366
13.6.1 模塊及分區(qū) 366
13.6.2 概念及約束 368
13.6.3 協(xié)程及編譯配置 371
13.6.4 智能指針及內(nèi)存回收 376
練習(xí)題 379
第14章 流及標(biāo)準類庫 381
14.1 流類概述 381
14.2 輸出流 382
14.3 輸入流 385
14.4 文件流 386
14.5 串流處理 388
14.6 函數(shù)模板format 389
14.7 標(biāo)準類庫的容器 390
14.8 類型特征type_traits 393
練習(xí)題 396
第15章 面向?qū)ο箝_發(fā)實例 397
15.1 面向?qū)ο笤O(shè)計概述 397
15.2 對象的靜態(tài)模型 398
15.3 面向?qū)ο蟮姆治?400
15.4 對象的設(shè)計與實現(xiàn) 401
15.5 骰子游戲模型設(shè)計實例 403
15.5.1 問題描述 403
15.5.2 對象模型 404
15.5.3 對象設(shè)計 405
15.6 游戲模型程序設(shè)計 408
練習(xí)題 414
參考文獻 422

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號