C++是一種集過程化程序設(shè)計(jì)、面向?qū)ο蟪绦蛟O(shè)計(jì)于一體的編程語言,是對C語言的繼承。全書共4章,以通俗易懂的語言和豐富的實(shí)例分別介紹了C++的開發(fā)環(huán)境、語言特性、新的變化和項(xiàng)目實(shí)戰(zhàn)。開發(fā)環(huán)境主要介紹了編譯環(huán)境的構(gòu)建和集成開發(fā)環(huán)境;語言特性則從C++中的四大特性說起,分析了虛指針、虛函數(shù)、字節(jié)序與對齊和操作符重載等;新的變化部分以豐富的代碼樣例對C++11標(biāo)準(zhǔn)的演進(jìn)作了詳細(xì)闡述;項(xiàng)目實(shí)踐則結(jié)合高鐵/動車模擬搶票系統(tǒng),講述實(shí)際開發(fā)的整體流程。書中所有知識點(diǎn)均給出了代碼實(shí)例和詳細(xì)注釋,讀者可以輕松領(lǐng)會C++的強(qiáng)大功能,快速提高開發(fā)能力。
更多科學(xué)出版社服務(wù),請掃碼獲取。
目錄
第1章 工具那些事 1
1.1 編譯器那些事 1
1.1.1 Windows上的GCC 1
1.1.2 Linux與MacOS安裝GCC 3
1.1.3 Linux下安裝Windows編譯環(huán)境 4
1.2 集成開發(fā)環(huán)境那些事 4
1.2.1 CLion 5
1.2.2 VSCode 7
1.2.3 Jupyter 8
1.2.4 Vim環(huán)境 13
第2章 萬丈高樓平地起 24
2.1 四大特性那些事 24
2.1.1 封裝 24
2.1.2 抽象 29
2.1.3 繼承 30
2.1.4 多態(tài) 38
2.2 Virtual那些事 41
2.2.1 虛指針與虛表 41
2.2.2 明白哪些可以作為虛函數(shù) 46
2.2.3 純虛函數(shù)和抽象類 48
2.2.4 RTTI與類型轉(zhuǎn)換操作符 51
2.3 大小端那些事 56
2.3.1 大小端的概念 56
2.3.2 字節(jié)對齊 57
2.3.3 正確判別大小端 58
2.3.4 優(yōu)雅地實(shí)現(xiàn)大小端轉(zhuǎn)換 59
2.4 字節(jié)對齊那些事 60
2.4.1 sizeof操作符計(jì)算 60
2.4.2 位域那些事 62
2.5 const與static那些事 64
2.5.1 const那些事 64
2.5.2 static那些事 71
2.6 操作符重載那些事 75
2.6.1 重載操作符 75
2.6.2 轉(zhuǎn)換操作符 77
2.6.3 重載new與delete 79
第3章 擁抱新變化 83
3.1 新的初始化那些事 83
3.1.1 C++98/03初始化方式 83
3.1.2 統(tǒng)一初始化 85
3.1.3 初始化列表 85
3.2 優(yōu)選nullptr那些事 87
3.2.1 C與C++的NULL 87
3.2.2 nullptr與nullptr_t 88
3.3 變量的自動類型推斷那些事 89
3.3.1 auto推斷 89
3.3.2 auto原理 91
3.4 基于范圍的for循環(huán)那些事 92
3.4.1 基本概述 93
3.4.2 基于范圍的for循環(huán)分類 94
3.4.3 支持自定義類型 95
3.5 右值引用那些事 97
3.5.1 左值與右值 98
3.5.2 萬能引用 99
3.5.3 區(qū)分萬能引用 100
3.5.4 引用折疊 101
3.5.5 完美轉(zhuǎn)發(fā) 102
3.5.6 移動語義 103
3.6 智能指針那些事 107
3.6.1 揭開神秘的面紗 107
3.6.2 妙用override與final 110
3.6.3 獨(dú)占型智能指針 112
3.6.4 共享型智能指針 116
3.6.5 弱引用型智能指針 123
3.7 Lambda那些事 125
3.7.1 Lambda表達(dá)式構(gòu)成 125
3.7.2 lambda與閉包 127
3.7.3 lambda背后的原理 127
3.8 雜談那些事 129
3.8.1 using還是typedef 129
3.8.2 異常處理noexcept 131
3.8.3 容器那些事 132
第4章 項(xiàng)目實(shí)戰(zhàn) 140
4.1 項(xiàng)目簡介 140
4.2 設(shè)計(jì)與實(shí)現(xiàn) 140
4.2.1 座位及用戶設(shè)計(jì)與實(shí)現(xiàn) 140
4.2.2 高鐵/動車設(shè)計(jì)與實(shí)現(xiàn) 142
參考文獻(xiàn) 157