《C++ Primer 中文版(第5版)》所有示例均全部采用 C++11標準改寫,這在經典升級版中極其罕見——充分體現了 C++語言的重大進展及其全面實踐。書中豐富的教學輔助內容、醒目的知識點提示,以及精心組織的編程示范,讓這本書在 C++領域的權威地位更加不可動搖。無論是初學者入門,或是中、高級程序員提升,本書均為不容置疑的首選。
c++ primer中文版 第5版 pdf目錄
第1章 開始
1.1 編寫一個簡單的C++程序
1.1.1 編譯、運行程序
1.2 初識輸入輸出
1.3 注釋簡介
1.4 控制流
1.4.1 while語句
1.4.2 for語句
1.4.3 讀取數量不定的輸入數據
1.4.4 if語句
1.5 類簡介
1.5.1 Sales_item類
1.5.2 初識成員函數
1.6 書店程序
小結
術語表
第Ⅰ部分 C++基礎
第2章 變量和基本類型
2.1 基本內置類型
2.1.1 算術類型
2.1.2 類型轉換
2.1.3 字面值常量
2.2 變量
2.2.1 變量定義
2.2.2 變量聲明和定義的關系
2.2.3 標識符
2.2.4 名字的作用域
2.3 復合類型
2.3.1 引用
2.3.2 指針
2.3.3 理解復合類型的聲明
2.4 const限定符
2.4.1 const的引用
2.4.2 指針和const
2.4.3 頂層const
2.4.4 constexpr和常量表達式
2.5 處理類型
2.5.1 類型別名
2.5.2 auto類型說明符
2.5.3 decltype類型指示符
2.6 自定義數據結構
2.6.1 定義Sales_data類型
2.6.2 使用Sales_data類
2.6.3 編寫自己的頭文件
小結
術語表
第3章 字符串、向量和數組
3.1 命名空間的using聲明
3.2 標準庫類型string
3.2.1 定義和初始化string對象
3.2.2 string對象上的操作
3.2.3 處理string對象中的字符
3.3 標準庫類型vector
3.3.1 定義和初始化vector對象
3.3.2 向vector對象中添加元素
3.3.3 其他vector操作
3.4 迭代器介紹
3.4.1 使用迭代器
3.4.2 迭代器運算
3.5 數組
3.5.1 定義和初始化內置數組
3.5.2 訪問數組元素
3.5.3 指針和數組
3.5.4 C風格字符串
3.5.5 與舊代碼的接口
3.6 多維數組
小結
術語表
第4章 表達式
4.1 基礎
4.1.1 基本概念
4.1.2 優先級與結合律
4.1.3 求值順序
4.2 算術運算符
4.3 邏輯和關系運算符
4.4 賦值運算符
4.5 遞增和遞減運算符
4.6 成員訪問運算符
4.7 條件運算符
4.8 位運算符
4.9 sizeof運算符
4.10 逗號運算符
4.11 類型轉換
4.11.1 算術轉換
4.11.2 其他隱式類型轉換
4.11.3 顯式轉換
4.12 運算符優先級表
小結
術語表
第5章 語句
5.1 簡單語句
5.2 語句作用域
5.3 條件語句
5.3.1 if語句
5.3.2 switch語句
5.4 迭代語句
5.4.1 while語句
5.4.2 傳統的for語句
5.4.3 范圍for語句
5.4.4 do while語句
5.5 跳轉語句
5.5.1 break語句
5.5.2 continue語句
5.5.3 goto語句
5.6 TRY語句塊和異常處理
5.6.1 throw表達式
5.6.2 try語句塊
5.6.3 標準異常
小結
術語表
第6章 函數
6.1 函數基礎
6.1.1 局部對象
6.1.2 函數聲明
6.1.3 分離式編譯
6.2 參數傳遞
6.2.1 傳值參數
6.2.2 傳引用參數
6.2.3 const形參和實參
6.2.4 數組形參
6.2.5 main:處理命令行選項
6.2.6 含有可變形參的函數
6.3 返回類型和return語句
6.3.1 無返回值函數
6.3.2 有返回值函數
6.3.3 返回數組指針
6.4 函數重載
6.4.1 重載與作用域
6.5 特殊用途語言特性
6.5.1 默認實參
6.5.2 內聯函數和constexpr函數
6.5.3 調試幫助
6.6 函數匹配
6.6.1 實參類型轉換
6.7 函數指針
小結
術語表
第7章 類
7.1 定義抽象數據類型
7.1.1 設計Sales_data類
7.1.2 定義改進的Sales_data類
7.1.3 定義類相關的非成員函數
7.1.4 構造函數
7.1.5 拷貝、賦值和析構
7.2 訪問控制與封裝
7.2.1 友元
7.3 類的其他特性
7.3.1 類成員再探
7.3.2 返回*this的成員函數
7.3.3 類類型
7.3.4 友元再探
7.4 類的作用域
7.4.1 名字查找與類的作用域
7.5 構造函數再探
7.5.1 構造函數初始值列表
7.5.2 委托構造函數
7.5.3 默認構造函數的作用
7.5.4 隱式的類類型轉換
7.5.5 聚合類
7.5.6 字面值常量類
7.6 類的靜態成員
小結
術語表
第Ⅱ部 C++標準庫
第8章 IO庫
8.1 IO類
8.1.1 IO對象無拷貝或賦值
8.1.2 條件狀態
8.1.3 管理輸出緩沖
8.2 文件輸入輸出
8.2.1 使用文件流對象
8.2.2 文件模式
8.3 string流
8.3.1 使用istringstream
8.3.2 使用ostringstream
小結
術語表
第9章 順序容器
9.1 順序容器概述
9.2 容器庫概覽
9.2.1 迭代器
9.2.2 容器類型成員
9.2.3 begin和end成員
9.2.4 容器定義和初始化
9.2.5 賦值和swap
9.2.6 容器大小操作
9.2.7 關系運算符
9.3 順序容器操作
9.3.1 向順序容器添加元素
9.3.2 訪問元素
9.3.3 刪除元素
9.3.4 特殊的forward_list操作
9.3.5 改變容器大小
9.3.6 容器操作可能使迭代器失效
9.4 vector對象是如何增長的
9.5 額外的string操作
9.5.1 構造string的其他方法
9.5.2 改變string的其他方法
9.5.3 string搜索操作
9.5.4 compare函數
9.5.5 數值轉換
9.6 容器適配器
小結
術語表
第10章 泛型算法
10.1 概述
10.2 初識泛型算法
10.2.1 只讀算法
10.2.2 寫容器元素的算法
10.2.3 重排容器元素的算法
10.3 定制操作
10.3.1 向算法傳遞函數
10.3.2 lambda表達式
10.3.3 lambda捕獲和返回
10.3.4 參數綁定
10.4 再探迭代器
10.4.1 插入迭代器
10.4.2 iostream迭代器
10.4.3 反向迭代器
10.5 泛型算法結構
10.5.1 5類迭代器
10.5.2 算法形參模式
10.5.3 算法命名規范
10.6 特定容器算法
小結
術語表
第11章 關聯容器
11.1 使用關聯容器
11.2 關聯容器概述
11.2.1 定義關聯容器
11.2.2 關鍵字類型的要求
11.2.3 pair類型
11.3 關聯容器操作
11.3.1 關聯容器迭代器
11.3.2 添加元素
11.3.3 刪除元素
11.3.4 map的下標操作
11.3.5 訪問元素
11.3.6 一個單詞轉換的map
11.4 無序容器
小結
術語表
第12章 動態內存
12.1 動態內存與智能指針
12.1.1 shared_ptr類
12.1.2 直接管理內存
12.1.3 shared_ptr和new結合使用
12.1.4 智能指針和異常
12.1.5 unique_ptr
12.1.6 weak_ptr
12.2 動態數組
12.2.1 new和數組
12.2.2 allocator類
12.3 使用標準庫:文本查詢程序
12.3.1 文本查詢程序設計
12.3.2 文本查詢程序類的定義
小結
術語表
第Ⅲ部分 類設計者的工具
第13章 拷貝控制
13.1 拷貝、賦值與銷毀
13.1.1 拷貝構造函數
13.1.2 拷貝賦值運算符
13.1.3 析構函數
13.1.4 三/五法則
13.1.5 使用=default
13.1.6 阻止拷貝
13.2 拷貝控制和資源管理
13.2.1 行為像值的類
13.2.2 定義行為像指針的類
13.3 交換操作
13.4 拷貝控制示例
13.5 動態內存管理類
13.6 對象移動
13.6.1 右值引用
13.6.2 移動構造函數和移動賦值運算符
13.6.3 右值引用和成員函數
小結
術語表
第14章 操作重載與類型轉換
14.1 基本概念
14.2 輸入和輸出運算符
14.2.1 重載輸出運算符<<
14.2.2 重載輸入運算符>>
14.3 算術和關系運算符
14.3.1 相等運算符
14.3.2 關系運算符
14.4 賦值運算符
14.5 下標運算符
14.6 遞增和遞減運算符
14.7 成員訪問運算符
14.8 函數調用運算符
14.8.1 lambda是函數對象
14.8.2 標準庫定義的函數對象
14.8.3 可調用對象與function
14.9 重載、類型轉換與運算符
14.9.1 類型轉換運算符
14.9.2 避免有二義性的類型轉換
14.9.3 函數匹配與重載運算符
小結
術語表
第15章 面向對象程序設計
15.1 OOP:概述
15.2 定義基類和派生類
15.2.1 定義基類
15.2.2 定義派生類
15.2.3 類型轉換與繼承
15.3 虛函數
15.4 抽象基類
15.5 訪問控制與繼承
15.6 繼承中的類作用域
15.7 構造函數與拷貝控制
15.7.1 虛析構函數
15.7.2 合成拷貝控制與繼承
15.7.3 派生類的拷貝控制成員
15.7.4 繼承的構造函數
15.8 容器與繼承
15.8.1 編寫Basket類
15.9 文本查詢程序再探
15.9.1 面向對象的解決方案
15.9.2 Query_base類和Query類
15.9.3 派生類
15.9.4 eval函數
小結
術語表
第16章 模板與泛型編程
16.1 定義模板
16.1.1 函數模板
16.1.2 類模板
16.1.3 模板參數
16.1.4 成員模板
16.1.5 控制實例化
16.1.6 效率與靈活性
16.2 模板實參推斷
16.2.1 類型轉換與模板類型參數
16.2.2 函數模板顯式實參
16.2.3 尾置返回類型與類型轉換
16.2.4 函數指針和實參推斷
16.2.5 模板實參推斷和引用
16.2.6 理解std::move
16.2.7 轉發
16.3 重載與模板
16.4 可變參數模板
16.4.1 編寫可變參數函數模板
16.4.2 包擴展
16.4.3 轉發參數包
16.5 模板特例化
小結
術語表
第Ⅳ部分 高級主題
第17章 標準庫特殊設施
17.1 tuple類型
17.1.1 定義和初始化tuple
17.1.2 使用tuple返回多個值
17.2 BITSET類型
17.2.1 定義和初始化bitset
17.2.2 bitset操作
17.3 正則表達式
17.3.1 使用正則表達式庫
17.3.2 匹配與Regex迭代器類型
17.3.3 使用子表達式
17.3.4 使用regex_replace
17.4 隨機數
17.4.2 其他隨機數分布
bernoulli_distribution類
17.5 IO庫再探
17.5.1 格式化輸入與輸出
17.5.2 未格式化的輸入/輸出操作
17.5.3 流隨機訪問
小結
術語表
第18章 用于大型程序的工具
18.1 異常處理
18.1.1 拋出異常
18.1.2 捕獲異常
18.1.3 函數try語句塊與構造函數
18.1.4 noexcept異常說明
18.1.5 異常類層次
18.2 命名空間
18.2.1 命名空間定義
18.2.2 使用命名空間成員
18.2.3 類、命名空間與作用域
18.2.4 重載與命名空間
18.3 多重繼承與虛繼承
18.3.1 多重繼承
18.3.2 類型轉換與多個基類
18.3.3 多重繼承下的類作用域
18.3.4 虛繼承
18.3.5 構造函數與虛繼承
小結
術語表
第19章 特殊工具與技術
19.1 控制內存分配
19.1.1 重載new和delete
19.1.2 定位new表達式
19.2 運行時類型識別
19.2.1 dynamic_cast運算符
19.2.2 typeid運算符
19.2.3 使用RTTI
19.2.4 type_info類
19.3 枚舉類型
19.4 類成員指針
19.4.1 數據成員指針
19.4.2 成員函數指針
19.4.3 將成員函數用作可調用對象
19.5 嵌套類
19.6 union:一種節省空間的類
19.7 局部類
19.8 固有的不可移植的特性
19.8.1 位域
19.8.2 volatile限定符
- PC官方版
- 安卓官方手機版
- IOS官方手機版