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

21天學(xué)通C++(第7版)

21天學(xué)通C++(第7版)

定 價(jià):¥59.00

作 者: (美)羅奧 著,袁國忠 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: VC++

ISBN: 9787115296245 出版時(shí)間: 2012-12-01 包裝: 平裝
開本: 16開 頁數(shù): 458 字?jǐn)?shù):  

內(nèi)容簡介

  《21天學(xué)通C++(第7版)》通過大量短小精悍的程序,詳細(xì)而全面地闡述了C++基本概念和技術(shù)以及C++11新增的功能,包括管理輸入/輸出、循環(huán)和數(shù)組、面向?qū)ο缶幊?、模板、使用?biāo)準(zhǔn)模板庫以及l(fā)ambda表達(dá)式等。這些內(nèi)容被組織成結(jié)構(gòu)合理、聯(lián)系緊密的章節(jié),每章都可在1小時(shí)內(nèi)閱讀完畢;每章都提供了示例程序清單,并輔以示例輸出和代碼分析,以闡述該章介紹的主題。為加深讀者對(duì)所學(xué)內(nèi)容的理解,每章末尾都提供了常見問題及其答案以及練習(xí)和測驗(yàn)。讀者可對(duì)照附錄D提供的測驗(yàn)和練習(xí)答案,了解自己對(duì)所學(xué)內(nèi)容的掌握程度?!?1天學(xué)通C++(第7版)》是針對(duì)C++初學(xué)者編寫的,不要求讀者有C語言方面的背景知識(shí),可作為高等院校教授C++課程的教材,也可供初學(xué)者自學(xué)C++時(shí)使用。

作者簡介

  Siddhartha Rao是一位Microsoft Visual C++MVP,擁有在各種平臺(tái)上編寫驅(qū)動(dòng)程序和應(yīng)用程序的豐富經(jīng)驗(yàn)。他受聘于SAP AG,當(dāng)前為SAP Product SecurityIndia的負(fù)責(zé)人,主要職責(zé)包括制定軟件開發(fā)最佳實(shí)踐,以確保SAP軟件的安全和全球競爭力。

圖書目錄

第1章 緒論
1.1 C++簡史
1.1.1 與C語言的關(guān)系
1.1.2 C++的優(yōu)點(diǎn)
1.1.3 C++標(biāo)準(zhǔn)的發(fā)展歷程
1.1.4 哪些人使用C++程序
1.2 編寫C++應(yīng)用程序
1.2.1 生成可執(zhí)行文件的步驟
1.2.2 分析并修復(fù)錯(cuò)誤
1.2.3 集成開發(fā)環(huán)境
1.2.4 編寫第一個(gè)C++應(yīng)用程序
1.2.5 生成并執(zhí)行第一個(gè)C++應(yīng)用程序
1.2.6 理解編譯錯(cuò)誤
1.3 C++11新增的功能
1.4 總結(jié)
1.5 問與答
1.6 作業(yè)
1.6.1 測驗(yàn)
1.6.2 練習(xí)
第2章 C++程序的組成部分
2.1 Hello World程序的組成部分
2.1.1 預(yù)處理器編譯指令#include
2.1.2 程序的主體-main()
2.1.3 返回值
2.2 名稱空間的概念
2.3 C++代碼中的注釋
2.4 C++函數(shù)
2.5 使用std::cin和std::cout執(zhí)行基本輸入輸出操作
2.6 總結(jié)
2.7 問與答
2.8 作業(yè)
2.8.1 測驗(yàn)
2.8.2 練習(xí)
第3章 使用變量和常量
3.1 什么是變量
3.1.1 內(nèi)存和尋址概述
3.1.2 聲明變量以訪問和使用內(nèi)存
3.1.3 聲明并初始化多個(gè)類型相同的變量
3.1.4 理解變量的作用域
3.1.5 全局變量
3.2 編譯器支持的常見C++變量類型
3.2.1 使用bool變量存儲(chǔ)布爾值
3.2.2 使用char變量存儲(chǔ)字符
3.2.3 有符號(hào)整數(shù)和無符號(hào)整數(shù)的概念
3.2.4 有符號(hào)整型short、int、long和long long
3.2.5 無符號(hào)整型unsigned short、unsigned int、unsigned long和unsigned long long
3.2.6 浮點(diǎn)類型float和double
3.3 使用sizeof確定變量的長度
3.4 使用typedef替換變量類型
3.5 什么是常量
3.5.1 字面常量
3.5.2 使用const將變量聲明為常量
3.5.3 使用constexpr聲明常量
3.5.4 枚舉常量
3.5.5 使用#define定義常量
3.6 給變量和常量命名
3.7 不能用作常量或變量名的關(guān)鍵字
3.8 總結(jié)
3.9 問與答
3.10 作業(yè)
3.10.1 測驗(yàn)
3.10.2 練習(xí)
第4章 管理數(shù)組和字符串
4.1 什么是數(shù)組
4.1.1 為何需要數(shù)組
4.1.2 聲明和初始化靜態(tài)數(shù)組
4.1.3 數(shù)組中的數(shù)據(jù)是如何存儲(chǔ)的
4.1.4 訪問存儲(chǔ)在數(shù)組中的數(shù)據(jù)
4.1.5 修改存儲(chǔ)在數(shù)組中的數(shù)據(jù)
4.2 多維數(shù)組
4.2.1 聲明和初始化多維數(shù)組
4.2.2 訪問多維數(shù)組中的元素
4.3 動(dòng)態(tài)數(shù)組
4.4 C風(fēng)格字符串
4.5 C++字符串:使用std::string
4.6 總結(jié)
4.7 問與答
4.8 作業(yè)
4.8.1 測驗(yàn)
4.8.2 練習(xí)
第5章 使用表達(dá)式、語句和運(yùn)算符
5.1 語句
5.2 復(fù)合語句(語句塊)
5.3 使用運(yùn)算符
5.3.1 賦值運(yùn)算符(=)
5.3.2 理解左值和右值
5.3.3 加法運(yùn)算符(+)、減法運(yùn)算符、乘法運(yùn)算符(*)、除法運(yùn)算符(/)和求模運(yùn)算符(%)
5.3.4 遞增運(yùn)算符(++)和遞減運(yùn)算符(——)
5.3.5 前綴還是后綴
5.3.6 相等運(yùn)算符(==)和不等運(yùn)算符(!=)
5.3.7 關(guān)系運(yùn)算符
5.3.8 邏輯運(yùn)算NOT、AND、OR和XOR
5.3.9 使用C++邏輯運(yùn)算NOT(!)、AND(&&)和OR(||)
5.3.10 按位運(yùn)算符NOT(~)、AND(&)、OR(|)和XOR(^)
5.3.11 按位右移運(yùn)算符(>>)和左移運(yùn)算符()訪問成員
9.2 關(guān)鍵字public和private
9.2.1 使用關(guān)鍵字private實(shí)現(xiàn)數(shù)據(jù)抽象
9.3 構(gòu)造函數(shù)
9.3.1 聲明和實(shí)現(xiàn)構(gòu)造函數(shù)
9.3.2 何時(shí)及如何使用構(gòu)造函數(shù)
9.3.3 重載構(gòu)造函數(shù)
9.3.4 沒有默認(rèn)構(gòu)造函數(shù)的類
9.3.5 帶默認(rèn)值的構(gòu)造函數(shù)參數(shù)
9.3.6 包含初始化列表的構(gòu)造函數(shù)
9.4 析構(gòu)函數(shù)
9.4.1 聲明和實(shí)現(xiàn)析構(gòu)函數(shù)
9.4.2 何時(shí)及如何使用析構(gòu)函數(shù)
9.5 復(fù)制構(gòu)造函數(shù)
9.5.1 淺復(fù)制及其存在的問題
9.5.2 使用復(fù)制構(gòu)造函數(shù)確保深復(fù)制
9.5.3 有助于改善性能的移動(dòng)構(gòu)造函數(shù)
9.6 構(gòu)造函數(shù)和析構(gòu)函數(shù)的其他用途
9.6.1 不允許復(fù)制的類
9.6.2 只能有一個(gè)實(shí)例的單例類
9.6.3 禁止在棧中實(shí)例化的類
9.7 this指針
9.8 將sizeof()用于類
9.9 結(jié)構(gòu)不同于類的地方
9.10 聲明友元
9.11 總結(jié)
9.12 問與答
9.13 作業(yè)
9.13.1 測驗(yàn)
9.13.2 練習(xí)
第10章 實(shí)現(xiàn)繼承
10.1 繼承基礎(chǔ)
10.1.1 繼承和派生
10.1.2 C++派生語法
10.1.3 訪問限定符protected
10.1.4 基類初始化-向基類傳遞參數(shù)
10.1.5 在派生類中覆蓋基類的方法
10.1.6 調(diào)用基類中被覆蓋的方法
10.1.7 在派生類中調(diào)用基類的方法
10.1.8 在派生類中隱藏基類的方法
10.1.9 構(gòu)造順序
10.1.10 析構(gòu)順序
10.2 私有繼承
10.3 保護(hù)繼承
10.4 切除問題
10.5 多繼承
10.6 總結(jié)
10.7 問與答
10.8 作業(yè)
10.8.1 測驗(yàn)
10.8.2 練習(xí)
第11章 多態(tài)
11.1 多態(tài)基礎(chǔ)
11.1.1 為何需要多態(tài)行為
11.1.2 使用虛函數(shù)實(shí)現(xiàn)多態(tài)行為
11.1.3 為何需要虛構(gòu)造函數(shù)
11.1.4 虛函數(shù)的工作原理——理解虛函數(shù)表
11.1.5 抽象基類和純虛函數(shù)
11.2 使用虛繼承解決菱形問題
11.3 可將復(fù)制構(gòu)造函數(shù)聲明為虛函數(shù)嗎
11.4 總結(jié)
11.5 問與答
11.6 作業(yè)
11.6.1 測驗(yàn)
11.6.2 練習(xí)
第12章 運(yùn)算符類型與運(yùn)算符重載
12.1 C++運(yùn)算符
12.2 單目運(yùn)算符
12.2.1 單目運(yùn)算符的類型
12.2.2 單目遞增與單目遞減運(yùn)算符
12.2.3 轉(zhuǎn)換運(yùn)算符
12.2.4 解除引用運(yùn)算符(*)和成員選擇運(yùn)算符(->)
12.3 雙目運(yùn)算符
12.3.1 雙目運(yùn)算符的類型
12.3.2 雙目加法與雙目減法運(yùn)算符
12.3.3 實(shí)現(xiàn)運(yùn)算符+=與(=
12.3.4 重載等于運(yùn)算符(==)和不等運(yùn)算符(!=)
12.3.5 重載運(yùn)算符、=
12.3.6 重載復(fù)制賦值運(yùn)算符(=)
12.3.7 下標(biāo)運(yùn)算符
12.4 函數(shù)運(yùn)算符operator()
12.5 不能重載的運(yùn)算符
12.6 總結(jié)
12.7 問與答
12.8 作業(yè)
12.8.1 測驗(yàn)
12.8.2 練習(xí)
第13章 類型轉(zhuǎn)換運(yùn)算符
13.1 為何需要類型轉(zhuǎn)換
13.2 為何有些C++程序員不喜歡C風(fēng)格類型轉(zhuǎn)換
13.3 C++類型轉(zhuǎn)換運(yùn)算符
13.3.1 使用static_cast
13.3.2 使用dynamic_cast和運(yùn)行階段類型識(shí)別
13.3.3 使用reinterpret_cast
13.3.4 使用const_cast
13.4 C++類型轉(zhuǎn)換運(yùn)算符存在的問題
13.5 總結(jié)
13.6 問與答
13.7 作業(yè)
13.7.1 測驗(yàn)
13.7.2 練習(xí)
第14章 宏和模板簡介
14.1 預(yù)處理器與編譯器
14.2 使用#define定義常量
14.3 使用#define編寫宏函數(shù)
14.3.1 為什么要使用括號(hào)
14.3.2 使用assert宏驗(yàn)證表達(dá)式
14.3.3 使用宏函數(shù)的優(yōu)點(diǎn)和缺點(diǎn)
14.4 模板簡介
14.4.1 模板聲明語法
14.4.2 各種類型的模板聲明
14.4.3 模板函數(shù)
14.4.4 模板與類型安全
14.4.5 模板類
14.4.6 模板的實(shí)例化和具體化
14.4.7 聲明包含多個(gè)參數(shù)的模板
14.4.8 聲明包含默認(rèn)參數(shù)的模板
14.4.9 一個(gè)模板示例
14.4.10 模板類和靜態(tài)成員
14.4.11 在實(shí)際C++編程中使用模板
14.5 總結(jié)
14.6 問與答
14.7 作業(yè)
14.7.1 測驗(yàn)
14.7.2 練習(xí)
第15章 標(biāo)準(zhǔn)模板庫簡介
15.1 STL容器
15.1.1 順序容器
15.1.2 關(guān)聯(lián)容器
15.1.3 選擇正確的容器
15.1.4 容器適配器
15.2 STL迭代器
15.3 STL算法
15.4 使用迭代器在容器和算法之間交互
15.5 STL字符串類
15.6 總結(jié)
15.7 問與答
15.8 作業(yè)
第16章 STL string類
16.1 為何需要字符串操作類
16.2 使用STL string類
16.2.1 實(shí)例化和復(fù)制STL string
16.2.2 訪問std::string的字符內(nèi)容
16.2.3 拼接字符串
16.2.4 在string中查找字符或子字符串
16.2.5 截短STL string
16.2.6 字符串反轉(zhuǎn)
16.2.7 字符串的大小寫轉(zhuǎn)換
16.3 基于模板的STL string實(shí)現(xiàn)
16.4 總結(jié)
16.5 問與答
16.6 作業(yè)
16.6.1 測驗(yàn)
16.6.2 練習(xí)
第17章 STL動(dòng)態(tài)數(shù)組類
17.1 std::vector的特點(diǎn)
17.2 典型的vector操作
17.2.1 實(shí)例化vector
17.2.2 使用push_back()在末尾插入元素
17.2.3 使用insert()在指定位置插入元素
17.2.4 使用數(shù)組語法訪問vector中的元素
17.2.5 使用指針語法訪問vector中的元素
17.2.6 刪除vector中的元素
17.3 理解大小和容量
17.4 STL deque 類
17.5 總結(jié)
17.6 問與答
17.7 作業(yè)
17.7.1 測驗(yàn)
17.7.2 練習(xí)
第18章 STL list和forward_list
18.1 std::list的特點(diǎn)
18.2 基本的list操作
18.2.1 實(shí)例化std::list對(duì)象
18.2.2 在list開頭或末尾插入元素
18.2.3 在list中間插入元素
18.2.4 刪除list中的元素
18.3 對(duì)list中的元素進(jìn)行反轉(zhuǎn)和排序
18.3.1 使用list::reverse()反轉(zhuǎn)元素的排列順序
18.3.2 對(duì)元素進(jìn)行排序
18.3.3 對(duì)包含對(duì)象的list進(jìn)行排序以及刪除其中的元素
18.4 總結(jié)
18.5 問與答
18.6 作業(yè)
18.6.1 測驗(yàn)
18.6.2 練習(xí)
第19章 STL集合類
19.1 簡介
19.2 STL set和multiset的基本操作
19.2.1 實(shí)例化std::set對(duì)象
19.2.2 在set或multiset中插入元素
19.2.3 在STL set或multiset中查找元素
19.2.4 刪除STL set或multiset中的元素
19.3 使用STL set和multiset的優(yōu)缺點(diǎn)
19.4 總結(jié)
19.5 問與答
19.6 作業(yè)
19.6.1 測驗(yàn)
19.6.2 練習(xí)
第20章 STL映射類
20.1 STL映射類簡介
20.2 std::map和std::multimap的基本操作
20.2.1 實(shí)例化std::map和std::multimap
20.2.2 在STL map或multimap中插入元素
20.2.3 在STL map或multimap中查找元素
20.2.4 在STL multimap中查找元素
20.2.5 刪除STL map或multimap中的元素
20.3 提供自定義的排序謂詞
20.3.1 散列表的工作原理
20.3.2 使用C++11散列表unordered_map和unordered_multimap
20.4 總結(jié)
20.5 問與答
20.6 作業(yè)
20.6.1 測驗(yàn)
20.6.2 練習(xí)
第21章 理解函數(shù)對(duì)象
21.1 函數(shù)對(duì)象與謂詞的概念
21.2 函數(shù)對(duì)象的典型用途
21.2.1 一元函數(shù)
21.2.2 一元謂詞
21.2.3 二元函數(shù)
21.2.4 二元謂詞
21.3 總結(jié)
21.4 問與答
21.5 作業(yè)
21.5.1 測驗(yàn)
21.5.2 練習(xí)
第22章 C++ lambda表達(dá)式
22.1 lambda表達(dá)式是什么
22.2 如何定義lambda表達(dá)式
22.3 一元函數(shù)對(duì)應(yīng)的lambda表達(dá)式
22.4 一元謂詞對(duì)應(yīng)的lambda表達(dá)式
22.5 通過捕獲列表接受狀態(tài)變量的lambda表達(dá)式
22.6 lambda表達(dá)式的通用語法
22.7 二元函數(shù)對(duì)應(yīng)的lambda表達(dá)式
22.8 二元謂詞對(duì)應(yīng)的lambda表達(dá)式
22.9 總結(jié)
22.10 問與答
22.11 作業(yè)
22.11.1 測驗(yàn)
22.11.2 練習(xí)
第23章 STL算法
23.1 什么是STL算法
23.2 STL算法的分類
23.2.1 非變序算法
23.2.2 變序算法
23.3 使用STL算法
23.3.1 根據(jù)值或條件查找元素
23.3.2 計(jì)算包含給定值或滿足給定條件的元素?cái)?shù)
23.3.3 在集合中搜索元素或序列
23.3.4 將容器中的元素初始化為指定值
23.3.5 使用std::generate()將元素設(shè)置為運(yùn)行階段生成的值
23.3.6 使用for_each()處理指定范圍內(nèi)的元素
23.3.7 使用std::transform()對(duì)范圍進(jìn)行變換
23.3.8 復(fù)制和刪除操作
23.3.9 替換值以及替換滿足給定條件的元素
23.3.10 排序、在有序集合中搜索以及刪除重復(fù)元素
23.3.11 將范圍分區(qū)
23.3.12 在有序集合中插入元素
23.4 總結(jié)
23.5 問與答
23.6 作業(yè)
23.6.1 測驗(yàn)
23.6.2 練習(xí)
第24章 自適應(yīng)容器:棧和隊(duì)列
24.1 棧和隊(duì)列的行為特征
24.1.1 棧
24.1.2 隊(duì)列
24.2 使用STL stack類
24.2.1 實(shí)例化stack
24.2.2 stack的成員函數(shù)
24.2.3 使用push()和pop()在棧頂插入和刪除元素
24.3 使用STL queue類
24.3.1 實(shí)例化queue
24.3.2 queue的成員函數(shù)
24.3.3 使用push()在隊(duì)尾插入以及使用pop()從隊(duì)首刪除
24.4 使用STL優(yōu)先級(jí)隊(duì)列
24.4.1 實(shí)例化priority_queue類
24.4.2 priority_queue的成員函數(shù)
24.4.3 使用push()在priority_queue末尾插入以及使用pop()在priority_queue開頭刪除
24.5 總結(jié)
24.6 問與答
24.7 作業(yè)
24.7.1 測驗(yàn)
24.7.2 練習(xí)
第25章 使用STL位標(biāo)志
25.1 bitset類
25.2 使用std::bitset及其成員
25.2.1 std:bitset的運(yùn)算符
25.2.2 std::bitset的成員方法
25.3 vector
25.3.1 實(shí)例化vector
25.3.2 vector的成員函數(shù)和運(yùn)算符
25.4 總結(jié)
25.5 問與答
25.6 作業(yè)
25.6.1 測驗(yàn)
25.6.2 練習(xí)
第26章 理解智能指針
26.1 什么是智能指針
26.1.1 常規(guī)(原始)指針存在的問題
26.1.2 智能指針有何幫助
26.2 智能指針是如何實(shí)現(xiàn)的
26.3 智能指針類型
26.3.1 深復(fù)制
26.3.2 寫時(shí)復(fù)制機(jī)制
26.3.3 引用計(jì)數(shù)智能指針
26.3.4 引用鏈接智能指針
26.3.5 破壞性復(fù)制
26.4 深受歡迎的智能指針庫
26.5 總結(jié)
26.6 問與答
26.7 作業(yè)
26.7.1 測試
26.7.2 練習(xí)
第27章 使用流進(jìn)行輸入和輸出
27.1 流的概述
27.2 重要的C++流類和流對(duì)象
27.3 使用std::cout將指定格式的數(shù)據(jù)寫入控制臺(tái)
27.3.1 使用std::cout修改數(shù)字的顯示格式
27.3.2 使用std::cout對(duì)齊文本和設(shè)置字段寬度
27.4 使用std::cin進(jìn)行輸入
27.4.1 使用std::cin將輸入讀取到基本類型變量中
27.4.2 使用std::cin:get將輸入讀取到char數(shù)組中
27.4.3 使用std::cin將輸入讀取到std::string中
27.5 使用std::fstream處理文件
27.5.1 使用open()和close()打開和關(guān)閉文件
27.5.2 使用open()創(chuàng)建文本文件并使用運(yùn)算符>讀取文本文件
27.5.4 讀寫二進(jìn)制文件
27.6 使用std::stringstream對(duì)字符串進(jìn)行轉(zhuǎn)換
27.7 總結(jié)
27.8 問與答
27.9 作業(yè)
27.9.1 測驗(yàn)
27.9.2 練習(xí)
第28章 異常處理
28.1 什么是異常
28.2 導(dǎo)致異常的原因
28.3 使用try和catch捕獲異常
28.3.1 使用catch(...)處理所有異常
28.3.2 捕獲特定類型的異常
28.3.3 使用throw引發(fā)特定類型的異常
28.4 異常處理的工作原理
28.4.1 std::exception類
28.4.2 從std::exception派生出自定義異常類
28.5 總結(jié)
28.6 問與答
28.7 作業(yè)
28.7.1 測驗(yàn)
28.7.2 練習(xí)
第29章 繼續(xù)前行
29.1 當(dāng)今的處理器有何不同
29.2 如何更好地利用多個(gè)內(nèi)核
29.2.1 線程是什么
29.2.2 為何要編寫多線程應(yīng)用程序
29.2.3 線程如何交換數(shù)據(jù)
29.2.4 使用互斥量和信號(hào)量同步線程
29.2.5 多線程技術(shù)帶來的問題
29.3 編寫杰出的C++代碼
29.4 更深入地學(xué)習(xí)C++
29.4.1 在線文檔
29.4.2 提供指南和幫助的社區(qū)
29.5 總結(jié)
29.6 問與答
29.7 作業(yè)
附錄A 二進(jìn)制和十六進(jìn)制
A.1 十進(jìn)制
A.2 二進(jìn)制
A.2.1 計(jì)算機(jī)為何使用二進(jìn)制
A.2.2 位和字節(jié)
A.2.3 1KB相當(dāng)于多少字節(jié)
A.3 十六進(jìn)制
A.4 不同進(jìn)制之間的轉(zhuǎn)換
A.4.1 通用轉(zhuǎn)換步驟
A.4.2 從十進(jìn)制轉(zhuǎn)換為二進(jìn)制
A.4.3 從十進(jìn)制轉(zhuǎn)換為十六進(jìn)制
附錄B C++關(guān)鍵字
附錄C 運(yùn)算符優(yōu)先級(jí)
附錄D 答案
附錄E ASCII碼

本目錄推薦

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