內容介紹
《重點大學計算機教材·C++高級進階教程》在假定讀者有一定的C++編程能力的基礎上,進一步加強了對一些基本概念的解釋,介紹了一些不太常用的關鍵字的用法。同時,介紹了一些C++語言機制的底層實現方案。另外,還進一步加深了對一些常用的C++語言機制的講解,同時也對一些高級話題進行了探討。《重點大學計算機教材·C++高級進階教程》可作為高年級本科生、研究生的程式設計語言教材,也可供相關的工程技術人員參考。
作品目錄
第1章 C++基礎知識 1.1 關於C++標準 1.2 文字常量和常變數 1.3 const的用法 1.4 const cast的用法 1.5 mutable的用法 1.6 求余運算符 1.7 sizeo]f的用法 1.8 引用與指針常量 1.9 左值的概念 1.10 關於goto語句 1.11 volatile的用法 1.12 typedef的用法 1.13 關於字元串 1.14 什麼是鏈式操作 1.15 關於名字空間 1.16 怎樣定義複雜的宏(Macro) 1.17 explicit的用法第2章 數據類型與程式結構 2.1 C++的數據類型 2.2 C++中的布爾類型 2.3 void的用法 2.4 枚舉類型的定義和使用 2.5 結構與聯合體 2.6 數據類型轉換 2.7 聲明與定義的區別 2.8 關於初始化 2.9 作用域和生命期 2.10 關於頭檔案 2.11 什麼是分離編譯模式第3章 函式 3.1 關於main()函式 3.2 函式參數是如何傳遞的 3.3 實現函式調用時堆疊的變化情況 3.4 關於函式參數的默認值 3.5 如何禁止傳值調用 3.6 定義和使用可變參數函式 3.7 關於函式指針 3.8 關於函式重載 3.9 關於操作符重載 3.10 類的成員函式與外部函式(靜態函式)的區別 3.11 關於內聯函式 3.12 函式的返回值放在哪裡 3.13 extem“C”的作用第4章 類與對象 4.1 類與對象概述 4.2 類定義後面為什麼一定要加分號 4.3 關於初始化列表 4.4 對象的生成方式 4.5 關於臨時對象 4.6 關於點操作符 4.7 嵌套類與局部類 4.8 對象之間的比較 4.9 類的靜態成員的定義和使用 4.10 類的設計與實現規範 4.11 抽象類與純虛函式 4.12 類對象的記憶體布局 4.13 為什麼說最好將基類的析構函式定義為虛函式 4.14 對象數據成員的初始值 4.15 對象產生和銷毀的順序 4.16 關於拷貝構造函式第5章 數組與指針 5.1 數組名的意義 5.2 什麼是指針 5.3 數組與指針的關係 5.4 數組的初始化 5.5 多維數組與多重指針 5.6 成員數據指針 5.7 關於this指針 5.8 什麼是懸掛指針 5.9 什麼是解引用 5.10 指針與句柄第6章 模板與標準模板庫 6.1 關於模板參數 6.2 關於模板實例化 6.3 函式聲明對函式模板實例化的禁止 6.4 將模板聲明為友元 6.5 模板與分離編譯模式 6.6 關於模板特化 6.7 輸入,輸出疊代子的用法 6.8 bitset的簡單用法 6.9 typename的用法 6.10 什麼是仿函式 6.11 什麼是引用計數 6.12 什麼是ADL第7章 記憶體管理 7.1 C++程式的記憶體布局 7.2 理解new操作的實現過程 7.3 怎樣禁止在堆(或棧)上創建對象 7.4 neW和delece的使用規範 7.5 delete和delete[]的區別 7.6 什麼是定位放置new 7.7 在函式中創建動態對象 7.8 什麼是記憶體池技術第8章 繼承與多態 8.1 私有成員會被繼承嗎 8.2 怎樣理解構造函式不能被繼承 8.3 什麼是虛擬繼承 8.4 怎樣編寫一個不能被繼承的類 8.5 關於隱藏 8.6 什麼是RTTI 8.7 虛調用的幾種具體情形 8.8 不要在構造函式或析構函式中調用虛函式 8.9 虛函式可以是私有的嗎 8.10 動態聯編是怎樣實現的 8.11 操作符重載 8.12【】操作符重載 8.13 *操作符重載 8.14 賦值操作符重載 8.15 輸入、輸出操作符重載第9章 流類庫與輸入/輸出 9.1 什麼是IO流 9.2 IO流類庫的優點 9.3 endl是什麼 9.4 實現不帶緩衝的輸入 9.5 提高輸入輸出操作的穩健性 9.6 為什麼要設定locale 9.7 char*和wch_T*之間的轉換 9.8 獲取檔案信息 9.9 管理檔案和目錄的相關操作 9.10 二進制檔案的IO操作第10章 異常處理 10.1 C++為什麼要引入異常處理機制 10.2 拋出異常和傳遞參數的不同 10.3 拋出和接收異常的順序 10.4 在構造函式中拋出異常 10.5 用傳引用的方式捕捉異常 10.6 在堆疊展開時如何防止記憶體泄漏第11章 程式開發環境與實踐 11.1 關於開發環境 11.2 在IDE中調試程式時查看輸出結果 11.3 使用彙編語言 11.4 怎樣調試C++程式 11.5 關於編碼規範 11.6 正確使用注釋 11.7 靜態庫與動態庫第12章 編程思想與方法 12.1 C與C++最大的區別 12.2 一個代碼重構的例子 12.3 實現代碼重用需要考慮的問題 12.4 為什麼需要設計模式 12.5 再論C++的複雜性參考文獻