注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)C++實(shí)戰(zhàn)筆記

C++實(shí)戰(zhàn)筆記

C++實(shí)戰(zhàn)筆記

定 價(jià):¥99.80

作 者: 羅劍鋒 著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787115574282 出版時(shí)間: 2021-11-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 268 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  C++編程語(yǔ)言,堪稱編程語(yǔ)言中的“全能選手”,它不僅功能強(qiáng)大、靈活,而且適用場(chǎng)景非常廣泛。但是要想真正掌握 C++,其技術(shù)門檻往往較高,這也使“新手”學(xué)起來困難,甚至連“老手”也覺得用好它并不容易。本書根據(jù)作者 20 多年編寫 C++代碼的實(shí)踐經(jīng)驗(yàn),精選出了現(xiàn)代 C++中好用且實(shí)用的若干特性,通過代碼演示實(shí)戰(zhàn)技巧,幫助讀者輕松地看懂、學(xué)會(huì) C++編程。本書從開發(fā)環(huán)境、開發(fā)綜述、核心語(yǔ)言特性、標(biāo)準(zhǔn)庫(kù)、進(jìn)階技能、設(shè)計(jì)模式、應(yīng)用實(shí)例等方面深入淺出地介紹了 C++實(shí)戰(zhàn)技巧。除此之外,本書還囊括了作者多年的開發(fā)心得,例如圖書推薦、工作經(jīng)驗(yàn)分享、時(shí)間管理方法等特色內(nèi)容。本書并不是一本入門教程,比較適合學(xué)過 C++基礎(chǔ)知識(shí),仍缺乏高效的 C++實(shí)戰(zhàn)技巧的讀者閱讀。通過閱讀本書,讀者可以深入洞悉 C++核心知識(shí),進(jìn)一步夯實(shí)實(shí)戰(zhàn)技能,開拓編程思路。

作者簡(jiǎn)介

  羅劍鋒,網(wǎng)名“Chrono”,前奇虎360技術(shù)專業(yè)人士,Nginx/OpenResty開源項(xiàng)目貢獻(xiàn)者,也是極客時(shí)間《透視HTTP協(xié)議》等專欄的作者。他熟悉各種網(wǎng)絡(luò)應(yīng)用協(xié)議,專注于C/C++、Linux、高性能編程等領(lǐng)域,著有《C++11/14 高級(jí)編程》《Boost程序庫(kù)完全開發(fā)指南》《Nginx 完全開發(fā)指南》《OpenResty 完全開發(fā)指南》等圖書。

圖書目錄

第 1章 C++開發(fā)環(huán)境 1

1.1 環(huán)境要求 1

1.1.1 操作系統(tǒng) 1

1.1.2 編譯器 2

1.1.3 實(shí)際環(huán)境 2

1.2 使用VM搭建環(huán)境 3

1.3 使用Docker搭建環(huán)境 3

1.4 使用Kubernetes搭建環(huán)境 4

1.5 測(cè)試并驗(yàn)證 5

1.6 小結(jié) 6

1.7 常見問題解答 7

第 2章 C++開發(fā)綜述 8

2.1 C++標(biāo)準(zhǔn)簡(jiǎn)介 8

2.1.1 C++98/03 8

2.1.2 C++11/14 9

2.1.3 C++17 9

2.1.4 C++20 10

2.1.5 C++標(biāo)準(zhǔn)小結(jié) 10

2.2 重新認(rèn)識(shí)C++ 10

2.2.1 生命周期 10

2.2.2 編程范式 13

2.2.3 C++核心知識(shí)小結(jié) 15

2.3 編碼階段的代碼風(fēng)格 16

2.3.1 留白的藝術(shù) 17

2.3.2 命名規(guī)范 18

2.3.3 注釋規(guī)范 20

2.3.4 源碼組織和管理 22

2.3.5 其他注意事項(xiàng) 23

2.3.6 代碼風(fēng)格小結(jié) 24

2.4 預(yù)處理階段編程 24

2.4.1 預(yù)處理簡(jiǎn)介 24

2.4.2 包含文件 25

2.4.3 宏定義 26

2.4.4 條件編譯 28

2.4.5 預(yù)處理小結(jié) 30

2.5 編譯階段編程 31

2.5.1 編譯簡(jiǎn)介 31

2.5.2 屬性 32

2.5.3 靜態(tài)斷言 35

2.5.4 編譯小結(jié) 37

2.6 運(yùn)行階段的調(diào)試分析 37

2.7 常見問題解答 38

第3章 C++核心語(yǔ)言特性 41

3.1 面向?qū)ο缶幊獭?1

3.1.1 設(shè)計(jì)思想 42

3.1.2 實(shí)現(xiàn)原則 42

3.1.3 編碼準(zhǔn)則 44

3.1.4 實(shí)用技巧 46

3.1.5 面向?qū)ο缶幊绦〗Y(jié) 49

3.2 自動(dòng)類型推導(dǎo) 49

3.2.1 什么是自動(dòng)類型推導(dǎo) 50

3.2.2 auto關(guān)鍵字 52

3.2.3 decltype關(guān)鍵字 53

3.2.4 用好自動(dòng)類型推導(dǎo) 55

3.2.5 自動(dòng)類型推導(dǎo)小結(jié) 57

3.3 常量與變量 57

3.3.1 const/volatile關(guān)鍵字 57

3.3.2 const的使用方法 59

3.3.3 mutable關(guān)鍵字 62

3.3.4 constexpr關(guān)鍵字 63

3.3.5 常量與變量小結(jié) 64

3.4 異?!?5

3.4.1 為什么要有異常 66

3.4.2 異常的用法 67

3.4.3 謹(jǐn)慎使用異?!?0

3.4.4 保證不拋出異常 71

3.4.5 異常小結(jié) 72

3.5 函數(shù)式編程 72

3.5.1 關(guān)于函數(shù)的討論 73

3.5.2 lambda是什么 73

3.5.3 lambda的形式 75

3.5.4 函數(shù)式編程小結(jié) 79

3.6 其他新特性精選 80

3.6.1 內(nèi)聯(lián)名字空間 80

3.6.2 嵌套名字空間 80

3.6.3 強(qiáng)類型枚舉 81

3.6.4 條件語(yǔ)句初始化 82

3.6.5 二進(jìn)制字面值 82

3.6.6 數(shù)字分位符 83

3.7 常見問題解答 83

第4章 C++標(biāo)準(zhǔn)庫(kù) 86

4.1 智能指針 86

4.1.1 智能指針簡(jiǎn)介 86

4.1.2 專有指針 87

4.1.3 共享指針 89

4.1.4 弱引用指針 91

4.1.5 智能指針小結(jié) 93

4.2 字符串 94

4.2.1 字符串類型 94

4.2.2 字符串的用法 95

4.2.3 字符串視圖 98

4.2.4 字符串格式化 100

4.2.5 正則表達(dá)式 101

4.2.6 字符串小結(jié) 106

4.3 標(biāo)準(zhǔn)容器 107

4.3.1 容器簡(jiǎn)介 107

4.3.2 容器的特性 108

4.3.3 順序容器 108

4.3.4 有序容器 110

4.3.5 無序容器 112

4.3.6 標(biāo)準(zhǔn)容器小結(jié) 114

4.4 特殊容器 115

4.4.1 可選值 115

4.4.2 可變值 117

4.4.3 任意值 120

4.4.4 多元組 121

4.4.5 特殊容器小結(jié) 123

4.5 標(biāo)準(zhǔn)算法 123

4.5.1 算法簡(jiǎn)介 123

4.5.2 迭代器簡(jiǎn)介 125

4.5.3 遍歷算法 126

4.5.4 排序算法 128

4.5.5 查找算法 129

4.5.6 范圍算法 132

4.5.7 標(biāo)準(zhǔn)算法小結(jié) 135

4.6 線程并發(fā) 135

4.6.1 線程簡(jiǎn)介 136

4.6.2 單次調(diào)用 137

4.6.3 局部存儲(chǔ) 138

4.6.4 原子變量 139

4.6.5 線程接口 142

4.6.6 線程并發(fā)小結(jié) 145

4.7 常見問題解答 145

第5章 C++進(jìn)階技能 149

5.1 準(zhǔn)標(biāo)準(zhǔn)庫(kù) 149

5.1.1 字符串轉(zhuǎn)換 150

5.1.2 字符串算法 152

5.1.3 高精度計(jì)時(shí)器 155

5.1.4 準(zhǔn)標(biāo)準(zhǔn)庫(kù)小結(jié) 157

5.2 數(shù)據(jù)序列化 157

5.2.1 JSON 158

5.2.2 MessagePack 160

5.2.3 ProtoBuffer 163

5.2.4 數(shù)據(jù)序列化小結(jié) 165

5.3 網(wǎng)絡(luò)通信 166

5.3.1 libcurl 166

5.3.2 cpr 168

5.3.3 cinatra 170

5.3.4 ZMQ 176

5.3.5 網(wǎng)絡(luò)通信小結(jié) 179

5.4 多語(yǔ)言混合編程 179

5.4.1 Python 180

5.4.2 Lua 184

5.4.3 多語(yǔ)言混合編程小結(jié) 187

5.5 性能分析 188

5.5.1 外部查看 188

5.5.2 內(nèi)部分析 192

5.5.3 性能分析小結(jié) 195

5.6 常見問題解答 196

第6章 C++與設(shè)計(jì)模式 199

6.1 設(shè)計(jì)模式簡(jiǎn)介 199

6.2 設(shè)計(jì)原則簡(jiǎn)介 200

6.2.1 SOLID原則 201

6.2.2 DRY/KISS原則 203

6.3 解讀設(shè)計(jì)模式 203

6.3.1 創(chuàng)建型模式 203

6.3.2 結(jié)構(gòu)型模式 205

6.3.3 行為模式 206

6.3.4 其他模式 208

6.4 小結(jié) 209

第7章 C++應(yīng)用實(shí)例 211

7.1 項(xiàng)目設(shè)計(jì) 211

7.2 預(yù)備開發(fā) 212

7.2.1 核心頭文件 213

7.2.2 自旋鎖 213

7.2.3 網(wǎng)絡(luò)通信 215

7.2.4 配置解析 216

7.3 正式開發(fā) 218

7.3.1 數(shù)據(jù)定義 218

7.3.2 數(shù)據(jù)序列化 220

7.3.3 數(shù)據(jù)存儲(chǔ)和統(tǒng)計(jì) 220

7.3.4 主服務(wù)器 222

7.4 測(cè)試驗(yàn)證 225

7.4.1 后端服務(wù)器 225

7.4.2 客戶端 226

7.4.3 運(yùn)行效果 227

7.5 小結(jié) 227

第8章 結(jié)束語(yǔ) 229

8.1 公正看待C++ 229

8.2 如何學(xué)習(xí)C++ 230

8.3 臨別贈(zèng)言 230

附錄A 經(jīng)典圖書推薦 232

A.1 《設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)》 232

A.2 《C++標(biāo)準(zhǔn)程序庫(kù)》 233

A.3 《C++語(yǔ)言的設(shè)計(jì)與演化》 233

A.4 《C++ Primer》 234

A.5 小結(jié) 234

附錄B 工作經(jīng)驗(yàn)分享 236

B.1 Linux 236

B.2 Vim 237

B.3 Git 239

B.4 GDB 239

附錄C 時(shí)間管理 241

C.1 工作時(shí)間的管理 241

C.2 工作小技巧 243

C.3 非工作時(shí)間的管理 243

C.4 小結(jié) 245

本目錄推薦

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