作 者:(美)J.伯頓·布朗寧,(英)布魯斯·薩瑟蘭 著 徐堅 等 譯
定 價:129
出 版 社:機械工業出版社
出版日期:2022年03月01日
頁 數:444
裝 幀:平裝
ISBN:9787111423171
●譯者序
前言
關於技術審校者
第1章C++入門
1.1尋找文本編輯器
1.2在Ubuntu上安裝Clang
1.3在Windows上安裝Clang
1.4在macOS上安裝Clang
1.5構建你的第一個C++程序
1.6在Cygwin或Linux中使用GDB調試C++程序
1.7在macOS上調試C++程序
1.8切換C++編譯模式
1.9用Boost庫構建程序
1.10安裝MicrosoftVisualStudio
第2章現代C++
2.1初始化變量
2.2使用初始化列表初始化對像
2.3使用類型推斷
2.4在函數中使用auto關鍵字
2.5編譯時常量的使用
2.6lambda的使用
2.7與時間有關的程序
2.8理解左值引用和右值引用
2.9使用托管指針
第3章文本的處理
3.1用字面量表示代碼中的字符串
3.2面向用戶的本地化文本
3.3從文件中讀取字符串
3.4從XML文件中讀取數據
3.5在字符串中插入運行時數據
第4章數字的處理
4.1在C++中使用整數類型
4.2用關繫運算符做決策
4.3用邏輯運算符進行鏈式決策
4.4使用十六進制值
4.5二進制運算符的位運算
4.6C++20的宇宙飛船運算符
第5章類
5.1定義一個類
5.2向類中添加數據
5.3向類中添加方法
5.4使用訪問修飾符
5.5初始化類成員變量
5.6類的清理
5.7類的拷貝
5.8使用移動語義優化代碼
5.9實現虛函數
第6章繼承
6.1類的繼承
6.2對派生類中的成員變量和方法進行訪問控制
6.3隱藏派生類中的方法
6.4使用多態基類
6.5防止方法重寫
6.6創建接口
6.7多重繼承
第7章標準模板庫的容器
7.1存儲固定數量的對像
7.2存儲更多的對像
7.3存儲一組不斷素
7.4將排序對像存儲在容器中以便快速查找
7.5將未素存儲在容器中以便快速查找
7.6使用C++20的“指定初始化”特性
第8章標準模板庫的算法
8.1在容器中使用迭代器定義序列
8.2對容器中素都調用函數
8.3查找容器中的優選值和最小值
8.4計算序列中某個值的出現次數
8.5查找序列中的值
8.6排序序素
8.7查找集合中的值
第9章模板
9.1創建模板函數
9.2模板偏特化
9.3創建類模板
9.4創建單例
9.5在編譯時計算值
9.6concept特性
第10章內存
10.1靜態內存的使用
10.2棧內存的使用
10.3堆內存的使用
10.4自動共享內存的使用
10.5創建單實例動態對像
10.6創建智能指針
10.7通過重載new和delete調試內存問題
10.8確定代碼更改對性能的影響
10.9了解內存選擇對性能的影響
10.10減少內存碎片問題
第11章並發
11.1使用線程執行並發任務
11.2創建線程作用域變量
11.3使用互斥的方式訪問共享對像
11.4創建等待事件的線程
11.5從線程中檢索結果
11.6在線程之間同步隊列消息
第12章網絡
12.1在macOS上設置BerkeleySockets應用程序
12.2在Ubuntu的Eclipse中設置BerkeleySockets應用程序
12.3在Windows的VisualStudio中設置Winsock2應用程序
12.4在兩個程序之間創建一個Socket連接
12.5在兩個程序之間創建網絡協議
第13章腳本
13.1在VisualStudioC++中運行Lua命令
13.2在Eclipse中創建一個Lua項目
13.3在Xcode中創建一個Lua項目
13.4使用Lua編程語言
13.5從C++中調用Lua函數
13.6從Lua中調用C函數
13.7創建異步Lua函數
第14章3D圖形編程
14.1GLFW簡介
14.2渲染三角形
14.3創建紋理四邊形
14.4從文件中加載幾何體
14.5使用C++20的module特性
本書整理彙集了98個問題解決方案示例,更新至C++20,每個隨附的示例均已使用C1ang3.5或VisualStudio2019進行了編譯和測試。本書列出的所有應用程序都是免費的,因此讀者可以根據自己的需求來使用它們。此外,本書介紹了使用Clang編譯器、MicrosoftVisualStudio(VS)2019和Xcode編寫代碼。Clang是一個開源代碼編譯器,本書會介紹如何在運行OSX、Windows或Linux(Ubuntu)的計算機上安裝和使用Clang。本書適合具有一定C++基礎,想要進一步提升C++編程技能的開發人員。
(美)J.伯頓·布朗寧,(英)布魯斯·薩瑟蘭 著 徐堅 等 譯
J.伯頓·布朗寧,1999年在北卡羅來納州立大學獲得博士學位。他的研究領域包括遠程學習、編程技術和教學。作為一位終生學習者,他涉獵廣泛,對編程、攝影、機器人技術、汽車修復、木工、狩獵、閱讀、釣魚和射箭等話題都很感興趣。Browning博士之前的著作所涉及的內容包括跨職能學習團隊(Cross-Functional Learning Teams,CFLT)、烏托邦學校(教師主導的學校模式)、計算機編程(多種語言)、開源軟件、醫療統計和數據挖掘、數控等離子切割機操作、教育、傳記、移動學習、在線教學等。