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

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

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

定 價:¥59.00

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

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

內(nèi)容簡介

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

作者簡介

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

圖書目錄

第1章 緒論
1.1 C++簡史
1.1.1 與C語言的關(guān)系
1.1.2 C++的優(yōu)點
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ù)錯誤
1.2.3 集成開發(fā)環(huán)境
1.2.4 編寫第一個C++應(yīng)用程序
1.2.5 生成并執(zhí)行第一個C++應(yīng)用程序
1.2.6 理解編譯錯誤
1.3 C++11新增的功能
1.4 總結(jié)
1.5 問與答
1.6 作業(yè)
1.6.1 測驗
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 測驗
2.8.2 練習(xí)
第3章 使用變量和常量
3.1 什么是變量
3.1.1 內(nèi)存和尋址概述
3.1.2 聲明變量以訪問和使用內(nèi)存
3.1.3 聲明并初始化多個類型相同的變量
3.1.4 理解變量的作用域
3.1.5 全局變量
3.2 編譯器支持的常見C++變量類型
3.2.1 使用bool變量存儲布爾值
3.2.2 使用char變量存儲字符
3.2.3 有符號整數(shù)和無符號整數(shù)的概念
3.2.4 有符號整型short、int、long和long long
3.2.5 無符號整型unsigned short、unsigned int、unsigned long和unsigned long long
3.2.6 浮點類型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 測驗
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ù)是如何存儲的
4.1.4 訪問存儲在數(shù)組中的數(shù)據(jù)
4.1.5 修改存儲在數(shù)組中的數(shù)據(jù)
4.2 多維數(shù)組
4.2.1 聲明和初始化多維數(shù)組
4.2.2 訪問多維數(shù)組中的元素
4.3 動態(tài)數(shù)組
4.4 C風(fēng)格字符串
4.5 C++字符串:使用std::string
4.6 總結(jié)
4.7 問與答
4.8 作業(yè)
4.8.1 測驗
4.8.2 練習(xí)
第5章 使用表達(dá)式、語句和運算符
5.1 語句
5.2 復(fù)合語句(語句塊)
5.3 使用運算符
5.3.1 賦值運算符(=)
5.3.2 理解左值和右值
5.3.3 加法運算符(+)、減法運算符、乘法運算符(*)、除法運算符(/)和求模運算符(%)
5.3.4 遞增運算符(++)和遞減運算符(——)
5.3.5 前綴還是后綴
5.3.6 相等運算符(==)和不等運算符(!=)
5.3.7 關(guān)系運算符
5.3.8 邏輯運算NOT、AND、OR和XOR
5.3.9 使用C++邏輯運算NOT(!)、AND(&&)和OR(||)
5.3.10 按位運算符NOT(~)、AND(&)、OR(|)和XOR(^)
5.3.11 按位右移運算符(>>)和左移運算符()訪問成員
9.2 關(guān)鍵字public和private
9.2.1 使用關(guān)鍵字private實現(xiàn)數(shù)據(jù)抽象
9.3 構(gòu)造函數(shù)
9.3.1 聲明和實現(xiàn)構(gòu)造函數(shù)
9.3.2 何時及如何使用構(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 聲明和實現(xiàn)析構(gòu)函數(shù)
9.4.2 何時及如何使用析構(gòu)函數(shù)
9.5 復(fù)制構(gòu)造函數(shù)
9.5.1 淺復(fù)制及其存在的問題
9.5.2 使用復(fù)制構(gòu)造函數(shù)確保深復(fù)制
9.5.3 有助于改善性能的移動構(gòu)造函數(shù)
9.6 構(gòu)造函數(shù)和析構(gòu)函數(shù)的其他用途
9.6.1 不允許復(fù)制的類
9.6.2 只能有一個實例的單例類
9.6.3 禁止在棧中實例化的類
9.7 this指針
9.8 將sizeof()用于類
9.9 結(jié)構(gòu)不同于類的地方
9.10 聲明友元
9.11 總結(jié)
9.12 問與答
9.13 作業(yè)
9.13.1 測驗
9.13.2 練習(xí)
第10章 實現(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 保護繼承
10.4 切除問題
10.5 多繼承
10.6 總結(jié)
10.7 問與答
10.8 作業(yè)
10.8.1 測驗
10.8.2 練習(xí)
第11章 多態(tài)
11.1 多態(tài)基礎(chǔ)
11.1.1 為何需要多態(tài)行為
11.1.2 使用虛函數(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 測驗
11.6.2 練習(xí)
第12章 運算符類型與運算符重載
12.1 C++運算符
12.2 單目運算符
12.2.1 單目運算符的類型
12.2.2 單目遞增與單目遞減運算符
12.2.3 轉(zhuǎn)換運算符
12.2.4 解除引用運算符(*)和成員選擇運算符(->)
12.3 雙目運算符
12.3.1 雙目運算符的類型
12.3.2 雙目加法與雙目減法運算符
12.3.3 實現(xiàn)運算符+=與(=
12.3.4 重載等于運算符(==)和不等運算符(!=)
12.3.5 重載運算符、=
12.3.6 重載復(fù)制賦值運算符(=)
12.3.7 下標(biāo)運算符
12.4 函數(shù)運算符operator()
12.5 不能重載的運算符
12.6 總結(jié)
12.7 問與答
12.8 作業(yè)
12.8.1 測驗
12.8.2 練習(xí)
第13章 類型轉(zhuǎn)換運算符
13.1 為何需要類型轉(zhuǎn)換
13.2 為何有些C++程序員不喜歡C風(fēng)格類型轉(zhuǎn)換
13.3 C++類型轉(zhuǎn)換運算符
13.3.1 使用static_cast
13.3.2 使用dynamic_cast和運行階段類型識別
13.3.3 使用reinterpret_cast
13.3.4 使用const_cast
13.4 C++類型轉(zhuǎn)換運算符存在的問題
13.5 總結(jié)
13.6 問與答
13.7 作業(yè)
13.7.1 測驗
13.7.2 練習(xí)
第14章 宏和模板簡介
14.1 預(yù)處理器與編譯器
14.2 使用#define定義常量
14.3 使用#define編寫宏函數(shù)
14.3.1 為什么要使用括號
14.3.2 使用assert宏驗證表達(dá)式
14.3.3 使用宏函數(shù)的優(yōu)點和缺點
14.4 模板簡介
14.4.1 模板聲明語法
14.4.2 各種類型的模板聲明
14.4.3 模板函數(shù)
14.4.4 模板與類型安全
14.4.5 模板類
14.4.6 模板的實例化和具體化
14.4.7 聲明包含多個參數(shù)的模板
14.4.8 聲明包含默認(rèn)參數(shù)的模板
14.4.9 一個模板示例
14.4.10 模板類和靜態(tài)成員
14.4.11 在實際C++編程中使用模板
14.5 總結(jié)
14.6 問與答
14.7 作業(yè)
14.7.1 測驗
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 實例化和復(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實現(xiàn)
16.4 總結(jié)
16.5 問與答
16.6 作業(yè)
16.6.1 測驗
16.6.2 練習(xí)
第17章 STL動態(tài)數(shù)組類
17.1 std::vector的特點
17.2 典型的vector操作
17.2.1 實例化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 測驗
17.7.2 練習(xí)
第18章 STL list和forward_list
18.1 std::list的特點
18.2 基本的list操作
18.2.1 實例化std::list對象
18.2.2 在list開頭或末尾插入元素
18.2.3 在list中間插入元素
18.2.4 刪除list中的元素
18.3 對list中的元素進(jìn)行反轉(zhuǎn)和排序
18.3.1 使用list::reverse()反轉(zhuǎn)元素的排列順序
18.3.2 對元素進(jìn)行排序
18.3.3 對包含對象的list進(jìn)行排序以及刪除其中的元素
18.4 總結(jié)
18.5 問與答
18.6 作業(yè)
18.6.1 測驗
18.6.2 練習(xí)
第19章 STL集合類
19.1 簡介
19.2 STL set和multiset的基本操作
19.2.1 實例化std::set對象
19.2.2 在set或multiset中插入元素
19.2.3 在STL set或multiset中查找元素
19.2.4 刪除STL set或multiset中的元素
19.3 使用STL set和multiset的優(yōu)缺點
19.4 總結(jié)
19.5 問與答
19.6 作業(yè)
19.6.1 測驗
19.6.2 練習(xí)
第20章 STL映射類
20.1 STL映射類簡介
20.2 std::map和std::multimap的基本操作
20.2.1 實例化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 測驗
20.6.2 練習(xí)
第21章 理解函數(shù)對象
21.1 函數(shù)對象與謂詞的概念
21.2 函數(shù)對象的典型用途
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 測驗
21.5.2 練習(xí)
第22章 C++ lambda表達(dá)式
22.1 lambda表達(dá)式是什么
22.2 如何定義lambda表達(dá)式
22.3 一元函數(shù)對應(yīng)的lambda表達(dá)式
22.4 一元謂詞對應(yīng)的lambda表達(dá)式
22.5 通過捕獲列表接受狀態(tài)變量的lambda表達(dá)式
22.6 lambda表達(dá)式的通用語法
22.7 二元函數(shù)對應(yīng)的lambda表達(dá)式
22.8 二元謂詞對應(yīng)的lambda表達(dá)式
22.9 總結(jié)
22.10 問與答
22.11 作業(yè)
22.11.1 測驗
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 計算包含給定值或滿足給定條件的元素數(shù)
23.3.3 在集合中搜索元素或序列
23.3.4 將容器中的元素初始化為指定值
23.3.5 使用std::generate()將元素設(shè)置為運行階段生成的值
23.3.6 使用for_each()處理指定范圍內(nèi)的元素
23.3.7 使用std::transform()對范圍進(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 測驗
23.6.2 練習(xí)
第24章 自適應(yīng)容器:棧和隊列
24.1 棧和隊列的行為特征
24.1.1 棧
24.1.2 隊列
24.2 使用STL stack類
24.2.1 實例化stack
24.2.2 stack的成員函數(shù)
24.2.3 使用push()和pop()在棧頂插入和刪除元素
24.3 使用STL queue類
24.3.1 實例化queue
24.3.2 queue的成員函數(shù)
24.3.3 使用push()在隊尾插入以及使用pop()從隊首刪除
24.4 使用STL優(yōu)先級隊列
24.4.1 實例化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 測驗
24.7.2 練習(xí)
第25章 使用STL位標(biāo)志
25.1 bitset類
25.2 使用std::bitset及其成員
25.2.1 std:bitset的運算符
25.2.2 std::bitset的成員方法
25.3 vector
25.3.1 實例化vector
25.3.2 vector的成員函數(shù)和運算符
25.4 總結(jié)
25.5 問與答
25.6 作業(yè)
25.6.1 測驗
25.6.2 練習(xí)
第26章 理解智能指針
26.1 什么是智能指針
26.1.1 常規(guī)(原始)指針存在的問題
26.1.2 智能指針有何幫助
26.2 智能指針是如何實現(xiàn)的
26.3 智能指針類型
26.3.1 深復(fù)制
26.3.2 寫時復(fù)制機制
26.3.3 引用計數(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++流類和流對象
27.3 使用std::cout將指定格式的數(shù)據(jù)寫入控制臺
27.3.1 使用std::cout修改數(shù)字的顯示格式
27.3.2 使用std::cout對齊文本和設(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)建文本文件并使用運算符>讀取文本文件
27.5.4 讀寫二進(jìn)制文件
27.6 使用std::stringstream對字符串進(jìn)行轉(zhuǎn)換
27.7 總結(jié)
27.8 問與答
27.9 作業(yè)
27.9.1 測驗
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 測驗
28.7.2 練習(xí)
第29章 繼續(xù)前行
29.1 當(dāng)今的處理器有何不同
29.2 如何更好地利用多個內(nèi)核
29.2.1 線程是什么
29.2.2 為何要編寫多線程應(yīng)用程序
29.2.3 線程如何交換數(shù)據(jù)
29.2.4 使用互斥量和信號量同步線程
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ì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ōu)先級
附錄D 答案
附錄E ASCII碼

本目錄推薦

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