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

你好,C++

你好,C++

定 價(jià):¥99.00

作 者: 陳良喬
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787302672586 出版時(shí)間: 2024-10-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

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

  《你好,C 》主要介紹C 開(kāi)發(fā)環(huán)境的搭建、基礎(chǔ)語(yǔ)法知識(shí)、面向?qū)ο缶幊趟枷胍约皹?biāo)準(zhǔn)模板庫(kù)的應(yīng)用,特別針對(duì)初學(xué)者在學(xué)習(xí)C 過(guò)程中可能遇到的難點(diǎn)提供了解決方案。全書(shū)共分13章,以一個(gè)工資程序的不斷優(yōu)化和完善為線索,展示了如何利用C 進(jìn)行設(shè)計(jì)和解決實(shí)際問(wèn)題。《你好,C 》遵循最新的C 23標(biāo)準(zhǔn),更新了所有代碼和講解,并增加了新標(biāo)準(zhǔn)引入的特性,如智能指針、std::thread等,使讀者能夠掌握最新的C 知識(shí)。每章末尾都配有“本章練習(xí)”,幫助讀者通過(guò)實(shí)際編寫(xiě)代碼來(lái)加深對(duì)知識(shí)的理解?!赌愫茫珻 》語(yǔ)言風(fēng)格輕松幽默,還收錄了一些公司的典型筆試題,無(wú)論是C 初學(xué)者還是中級(jí)程序員提升技能,都是極佳的選擇。同時(shí),《你好,C 》也適合作為應(yīng)用型本科及高職高專(zhuān)相關(guān)專(zhuān)業(yè)的教材使用。

作者簡(jiǎn)介

  陳良喬,程序員、自由撰稿人,畢業(yè)于西安交通大學(xué)。敏而好學(xué),樂(lè)于分享,連續(xù)六年獲得微軟最有價(jià)值專(zhuān)家(MVP)稱(chēng)號(hào)。因撰寫(xiě)一系列Visual Studio 2010技術(shù)文章和Windows 7開(kāi)發(fā)技術(shù)文章,2010年獲“MSDN原創(chuàng)之星”稱(chēng)號(hào)。曾組織翻譯Bjane Stroustrup的《C 11 FAQ》。著有《我的第一本C 書(shū)》和《C語(yǔ)言程序伴侶》。

圖書(shū)目錄

目    錄
第1篇  叩開(kāi)C 世界的大門(mén)
第1章  C 世界地圖 2
1.1  我們的第一個(gè)C 程序 2
1.1.1  下載并安裝Visual Studio社區(qū)版 2
1.1.2  創(chuàng)建“你好,C ”項(xiàng)目 3
1.1.3  編輯代碼,生成并運(yùn)行C 程序 3
1.2  C 是什么 5
1.3  C 的“前世今生” 6
1.3.1  從B到C 6
1.3.2  從C到C 7
1.3.3  更簡(jiǎn)單、更高效:C 23讓C 續(xù)寫(xiě)傳奇 7
1.4  三分天下:C 世界版圖 8
1.4.1  Windows系統(tǒng)下的C 開(kāi)發(fā) 8
1.4.2  UNIX/Linux系統(tǒng)下的C 開(kāi)發(fā) 9
1.4.3  嵌入式系統(tǒng)下的C 開(kāi)發(fā) 9
1.5  如何學(xué)好C 9
1.5.1  “多讀多寫(xiě)多思考”是學(xué)好C 的唯一途徑 10
1.5.2  和百度等搜索引擎做朋友 10
1.5.3  使用配備GPT-4的Microsoft Copilot這一AI小助手 11
1.5.4  C 詞典cplusplus.com 11
1.6  本章練習(xí) 12
第2章  與C 的第一次親密接觸 13
2.1  一個(gè)C 程序的自白 13
2.1.1  C 程序=預(yù)處理指令 程序代碼 注釋 13
2.1.2  程序的“父母”:編譯器和鏈接器 18
2.1.3  C 程序的執(zhí)行過(guò)程 19
2.1.4  程序的兩大任務(wù):描述數(shù)據(jù)與處理數(shù)據(jù) 21
2.2  基本輸入/輸出流 22
2.2.1  標(biāo)準(zhǔn)的輸入和輸出對(duì)象 23
2.2.2  輸出格式控制 24
2.2.3  讀/寫(xiě)文件 25
2.3  本章練習(xí) 28
第2篇  歡迎來(lái)到C 的世界
第3章  C 世界眾生相 30
3.1  C 中的數(shù)據(jù)類(lèi)型 30
3.2  變量和常量 31
3.2.1  變量的定義與初始化 32
3.2.2  常量 36
3.3  數(shù)值數(shù)據(jù)類(lèi)型 42
3.3.1  整數(shù)類(lèi)型 42
3.3.2  浮點(diǎn)數(shù)類(lèi)型 45
3.4  布爾類(lèi)型 48
3.5  字符串類(lèi)型 50
3.5.1  字符類(lèi)型 50
3.5.2  字符串類(lèi)型 51
3.6  數(shù)組 55
3.6.1  數(shù)組的聲明與初始化 55
3.6.2  數(shù)組的使用 56
3.7  枚舉類(lèi)型 57
3.8  用結(jié)構(gòu)體類(lèi)型描述復(fù)雜的事物 60
3.8.1  結(jié)構(gòu)體的定義 60
3.8.2  結(jié)構(gòu)體的使用 61
3.9  指向內(nèi)存位置的指針 63
3.9.1  內(nèi)存空間的訪問(wèn)形式 64
3.9.2  指針變量的定義 64
3.9.3  指針的賦值和使用 65
3.10  本章練習(xí) 68
第4章  將語(yǔ)句編織成程序 69
4.1  用運(yùn)算符對(duì)數(shù)據(jù)進(jìn)行運(yùn)算 69
4.1.1  用表達(dá)式表達(dá)設(shè)計(jì)意圖 70
4.1.2  算術(shù)運(yùn)算符 71
4.1.3  賦值運(yùn)算符 72
4.1.4  關(guān)系運(yùn)算符 73
4.1.5  邏輯運(yùn)算符 76
4.1.6  運(yùn)算符之間的優(yōu)先順序 78
4.1.7  將表達(dá)式組織成語(yǔ)句 80
4.2  條件選擇語(yǔ)句 81
4.2.1  if語(yǔ)句:如果……那么……  81
4.2.2  表達(dá)并列條件選擇的switch語(yǔ)句:如果……如果……如果……  85
4.3  循環(huán)控制語(yǔ)句 89
4.3.1  while循環(huán):只要……就一直…… 89
4.3.2  do…while循環(huán):一直……只要……  91
4.3.3  for循環(huán):在某個(gè)范圍內(nèi)……每個(gè)都……  93
4.3.4  循環(huán)控制:break和continue 95
4.4  從語(yǔ)句到程序 98
4.4.1  用三種流程控制結(jié)構(gòu)將多條語(yǔ)句串聯(lián)成程序 98
4.4.2  工資程序成長(zhǎng)記:用數(shù)組處理批量數(shù)據(jù),用循環(huán)結(jié)構(gòu)執(zhí)行重復(fù)操作 100
4.5  本章練習(xí) 103
第5章  用函數(shù)封裝程序功能 105
5.1  函數(shù)就是一個(gè)大“箱子” 105
5.1.1  函數(shù)的聲明和定義 106
5.1.2  函數(shù)調(diào)用機(jī)制 110
5.1.3  函數(shù)參數(shù)的傳遞 115
5.1.4  函數(shù)的返回值 117
5.1.5  函數(shù)的遞歸調(diào)用 118
5.2  內(nèi)聯(lián)函數(shù) 121
5.2.1  用空間換時(shí)間的內(nèi)聯(lián)函數(shù) 121
5.2.2  內(nèi)聯(lián)函數(shù)的使用規(guī)則 122
5.3  重載函數(shù) 123
5.3.1  重載函數(shù)的聲明 123
5.3.2  重載函數(shù)的解析 125
5.4  函數(shù)設(shè)計(jì)的基本原則 126
5.4.1  函數(shù)聲明的設(shè)計(jì)規(guī)則 126
5.4.2  函數(shù)體的設(shè)計(jì)規(guī)則 128
5.4.3  工資程序成長(zhǎng)記:函數(shù) 134
5.5  本章練習(xí) 138
第6章  當(dāng)C 愛(ài)上面向?qū)ο?139
6.1  從結(jié)構(gòu)化程序設(shè)計(jì)到面向?qū)ο蟪绦蛟O(shè)計(jì) 139
6.1.1  “自頂向下,逐步求精”的面向過(guò)程程序設(shè)計(jì) 140
6.1.2  萬(wàn)般皆對(duì)象:面向?qū)ο蟪绦蛟O(shè)計(jì) 141
6.1.3  面向?qū)ο蟪绦蛟O(shè)計(jì)的三座基石:封裝、繼承與多態(tài) 142
6.2  類(lèi):當(dāng)C 愛(ài)上面向?qū)ο?145
6.2.1  類(lèi)的聲明和定義 145
6.2.2  使用類(lèi)創(chuàng)建對(duì)象 150
6.2.3  一個(gè)對(duì)象的生與死:構(gòu)造函數(shù)和析構(gòu)函數(shù) 152
6.2.4  有一只叫作多利的羊:拷貝構(gòu)造函數(shù) 156
6.2.5  運(yùn)算符重載 162
6.2.6  類(lèi)是如何藏私房錢(qián)的:類(lèi)成員的訪問(wèn)控制 164
6.2.7  在友元中訪問(wèn)類(lèi)的隱藏信息 167
6.3  類(lèi)如何面向?qū)ο?170
6.3.1  用類(lèi)機(jī)制實(shí)現(xiàn)封裝 170
6.3.2  用基類(lèi)和派生類(lèi)實(shí)現(xiàn)繼承 172
6.3.3  用虛函數(shù)實(shí)現(xiàn)多態(tài) 179
6.4  工資程序成長(zhǎng)記:類(lèi)與對(duì)象 187
6.4.1  需求分析:老板要的是這樣一個(gè)工資程序 188
6.4.2  從問(wèn)題描述中發(fā)現(xiàn)對(duì)象 189
6.4.3  分析對(duì)象的屬性和行為 189
6.4.4  依葫蘆畫(huà)瓢:用C 表達(dá)設(shè)計(jì)結(jié)果 191
6.5  高手是這樣煉成的 201
6.5.1  C 類(lèi)對(duì)象的內(nèi)存模型 201
6.5.2  指向自身的this指針 204
6.6  本章練習(xí) 206
第7章  C 世界的奇人異事 207
7.1  一切指針都是紙老虎:徹底理解指針 207
7.1.1  指針的運(yùn)算 207
7.1.2  靈活的void類(lèi)型和void類(lèi)型指針 209
7.1.3  指向指針的指針 211
7.1.4  指針在函數(shù)中的應(yīng)用 213
7.1.5  引用—給變量起個(gè)好聽(tīng)好記的綽號(hào) 216
7.2  亡羊補(bǔ)牢—程序中的異常處理 220
7.2.1  異常處理 220
7.2.2  異常的函數(shù)接口聲明 222
7.3  編寫(xiě)更復(fù)雜的C 程序 223
7.3.1  源文件和頭文件 223
7.3.2  命名空間 225
7.3.3  作用域與可見(jiàn)性 228
7.3.4  編譯前的預(yù)處理 230
7.4  高手是這樣煉成的 232
7.4.1  用宏定義化繁為簡(jiǎn) 232
7.4.2  使用typedef給數(shù)據(jù)類(lèi)型取個(gè)外號(hào) 233
7.4.3  C 世界的管家婆—用const保護(hù)數(shù)據(jù) 235
7.5  本章練習(xí) 238
第3篇  攀登C 世界的高峰
第8章  用STL優(yōu)化你的程序 240
8.1  跟STL做朋友 241
8.1.1  算法 容器 迭代器 = STL 241
8.1.2  在程序中使用STL 242
8.2  用模板實(shí)現(xiàn)通用算法 244
8.2.1  函數(shù)模板 245
8.2.2  類(lèi)模板 247
8.3  本章練習(xí) 250
第9章  用STL中的容器管理數(shù)據(jù) 251
9.1  容器就是STL中的瓶瓶罐罐 251
9.1.1  操作容器中的數(shù)據(jù)元素 253
9.1.2  使用迭代器訪問(wèn)容器中的數(shù)據(jù)元素 254
9.1.3  容器的使用說(shuō)明書(shū) 256
9.1.4  如何選擇合適的容器 258
9.2  vector容器是數(shù)組的最佳替代者 259
9.2.1  創(chuàng)建并初始化vector對(duì)象 259
9.2.2  對(duì)vector容器的操作 261
9.2.3  訪問(wèn)vector容器中的數(shù)據(jù) 262
9.3  可以保存鍵-值對(duì)的map容器 262
9.3.1  創(chuàng)建并初始化map容器 263
9.3.2  將數(shù)據(jù)保存到map容器中 264
9.3.3  根據(jù)鍵找到對(duì)應(yīng)的值 265
9.4  本章練習(xí) 266
第10章  用STL中的通用算法處理數(shù)據(jù) 268
10.1  STL算法中的四大類(lèi)別 268
10.2  容器元素的遍歷與查找 270
10.2.1  用for_each()算法遍歷容器中的數(shù)據(jù)元素 270
10.2.2  用find()和find_if()算法從容器中挑選數(shù)據(jù) 271
10.3  容器元素的復(fù)制與變換 275
10.3.1  復(fù)制容器元素:copy()算法 275
10.3.2  合并容器元素:merge()算法 278
10.3.3  變換容器元素:transform函數(shù) 280
10.4  容器元素的排序 282
10.4.1  使用sort()算法對(duì)容器中的數(shù)據(jù)進(jìn)行排序 282
10.4.2  自定義排序的規(guī)則 285
10.5  實(shí)戰(zhàn)STL算法 287
10.5.1  “算法”老師帶來(lái)的一堂別開(kāi)生面的體育課 287
10.5.2  刪除容器中的冗余元素 292
10.6  本章練習(xí) 293
第11章  函數(shù)的三件“馬甲”:函數(shù)指針、函數(shù)對(duì)象與Lambda表達(dá)式 294
11.1  函數(shù)指針 294
11.1.1  函數(shù)指針的定義、賦值與使用 294
11.1.2  用函數(shù)指針實(shí)現(xiàn)回調(diào)函數(shù) 296
11.1.3  將函數(shù)指針應(yīng)用到STL算法中 298
11.2  函數(shù)對(duì)象 300
11.2.1  定義一個(gè)函數(shù)對(duì)象 300
11.2.2  利用函數(shù)對(duì)象記住狀態(tài)數(shù)據(jù) 301
11.3  用Lambda表達(dá)式編寫(xiě)更簡(jiǎn)單的函數(shù) 304
11.3.1  最簡(jiǎn)單直接的函數(shù)表達(dá)形式:Lambda表達(dá)式 304
11.3.2  Lambda表達(dá)式的定義與使用 305
11.4  程序成長(zhǎng)記:容器與算法,讓我們愛(ài)上C 308
11.5  本章練習(xí) 312
第12章  C 世界的幾件新鮮事 313
12.1  右值引用進(jìn)一步提升C 的性能 313
12.1.1  什么是右值引用 313
12.1.2  右值引用是如何提高性能的 314
12.2  智能指針shared_ptr 318
12.2.1  痛并快樂(lè)著:C 中的內(nèi)存管理 318
12.2.2  引用計(jì)數(shù):shared_ptr為什么這么聰明 319
12.2.3  智能指針shared_ptr的應(yīng)用場(chǎng)景 321
12.2.4  shared_ptr的使用 323
12.2.5  自定義shared_ptr的釋放行為 327
12.3  用進(jìn)行多線程開(kāi)發(fā) 328
12.3.1  利用thread創(chuàng)建線程 329
12.3.2  利用future和promise簡(jiǎn)化線程的返回值操作 332
12.3.3  利用mutex處理線程之間共享資源的競(jìng)爭(zhēng) 337
12.4  本章練習(xí) 341
第13章  找工作就靠它了 342
13.1  打好基礎(chǔ) 342
13.1.1  基本概念 342
13.1.2  函數(shù) 345
13.1.3  面向?qū)ο蟪绦蛟O(shè)計(jì) 347
13.1.4  類(lèi)與對(duì)象 349
13.1.5  STL 358
13.2  積累經(jīng)驗(yàn) 361
13.3  考查智力 364

本目錄推薦

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