●部分 基礎篇 章 初識C++ 2 1.1 C++概述 2 1.1.1 程序 2 1.1.2 程序設計語言 2 1.1.3 程序設計 4 1.1.4 C++簡介 4 1.2 面向過程和面向對像編程概述 5 1.2.1 面向過程程序設計 5 1.2.2 面向對像程序設計 6 1.3 面向過程和面向對像的程序設計方法比較 7 1.4 C++程序開發 9 1.4.1 C++程序開發過程 9 1.4.2 Visual C++ 6.0調試C++程序的 操作過程 10 本章小結 14 習題1 14 第2章 C++對C基本語法的 擴充 15 2.1 C++的輸入和輸出 15 2.1.1 輸入流對像 15 2.1.2 輸出流對像 17 2.1.3 字符數組的輸入和輸出 19 2.2 函數重載 22 2.2.1 為什麼要進行函數重載 22 2.2.2 使用函數重載的條件 23 2.2.3 重載函數的使用方法 23 2.2.4 函數的默認參數 23 2.3 函數模板與模板函數 24 2.4 內聯函數 26 2.5 內存的動態分配與釋放 27 2.5.1 new運算符 27 2.5.2 delete 運算符 28 2.6 引用 29 2.6.1 引用的概念 29 2.6.2 使用引用的注意事項 29 2.6.3 引用作為函數參數 30 2.6.4 函數返回引用 32 2.7 const修飾符 33 2.7.1 用const定義常量 33 2.7.2 用const限制指針 34 2.7.3 const成員函數 35 2.8 名字空間 36 2.8.1 名字空間的作用 36 2.8.2 定義名字空間 37 2.8.3 名字空間的用法 38 2.9 sizeof運算符 42 2.10 程序設計實例 43 本章小結 50 習題2 51 第二部分 核心篇 第3章 類與對像 56 3.1 類的概念和使用 56 3.1.1 類定義格式 56 3.1.2 成員函數的定義位置 57 3.1.3 內聯成員函數 59 3.1.4 常量成員函數 60 3.2 對像的創建和使用 61 3.2.1 對像的創建 61 3.2.2 對像作為函數參數和 返回值 61 3.2.3 this指針 63 3.3 構造函數的概念和使用 64 3.3.1 為什麼引入構造函數 64 3.3.2 重載構造函數 66 3.3.3 默認參數的構造函數 67 3.3.4 復制構造函數 68 3.3.5 成員初始化參數表 71 3.4 析構函數的概念和使用 73 3.4.1 為什麼引入析構函數 73 3.4.2 析構函數的使用 73 3.5 堆對像的概念和使用 74 3.5.1 創建和刪除單個堆對像的 方法 74 3.5.2 創建和刪除堆對像數組的 方法 76 3.6 靜態數據成員和靜態成員函數 76 3.6.1 為什麼需要靜態數據成員 76 3.6.2 靜態數據成員的訪問和 初始化 78 3.6.3 靜態成員函數的概念和使用 79 3.7 &nbs函類 80 3.7.1 &nbs的概念和使用 80 3.7.2 的注意事項 84 3.8 程序設計實例 84 本章小結 87 習題3 87 第4章 繼承與派生 90 4.1 為什麼要引入繼承與派生 90 4.1.1 繼承與派生的舉例 90 4.1.2 繼承與派生的概念 91 4.2 基類和派生類 91 4.2.1 基類與派生類的概念 91 4.2.2 派生類的定義 91 4.3 三種派生方式 92 4.3.1 公有派生 92 4.3.2 私有派生 94 4.3.3 保護派生 95 4.3.4 三種派生方式的區別 95 4.4 派生類的構造函數和析構函數 97 4.4.1 派生類的構造函數 97 4.4.2 基類構造函數的調用方式 97 4.4.3 派生類的析構函數 98 4.5 多繼承和虛基類 99 4.5.1 多繼承的定義 99 4.5.2 多繼承中的構造函數和析構 函數 100 4.5.3 二義性與虛基類 101 4.6 程序設計實例 106 本章小結 109 習題4 110 第5章 多態性與虛函數 112 5.1 實現動態多態性 112 5.1.1 多態性的實現方法 112 5.1.2 靜態多態性和動態多態性 113 5.2 對虛函數的限制 117 5.2.1 聲明虛函數的限制 117 5.2.2 虛函數的使用限制 118 5.3 在成員函數中調用虛函數 120 5.4 在構造函數中調用虛函數 121 5.5 純虛函數和抽像類 122 5.6 程序設計實例 123 本章小結 125 習題5 125 第6章 運算符重載與類模板 128 6.1 為什麼要進行運算符重載 128 6.1.1 運算符重載的意義 128 6.1.2 運算符重載的注意事項 131 6.2 賦值運算符和四則運算符重載 132 6.3 自增和自減運算符重載 134 6.4 關繫運算符重載 135 6.5 復合賦值運算符重載 136 6.6 下標運算符重載 137 6.7 插入與抽取運算符重載 139 6.7.1 插入運算符重載 139 6.7.2 抽取運算符重載 140 6.8 類型轉換 142 6.8.1 基本類型和自定義類型之間的 轉換 142 6.8.2 自定義類型之間的轉換 143 6.9 類模板 146 6.9.1 類模板定義格式 146 6.9.2 使用類模板創建對像 147 6.10 程序設計實例 153 本章小結 156 習題6 157 第7章 流 159 7.1 I/O流的概念 159 7.2 I/O流類庫的結構 160 7.3 標準I/O流 161 7.3.1 標準I/O流的類層次 161 7.3.2 預定義流對像 161 7.3.3 預定義插入抽取運算符 162 7.4 無格式I/O的ios類成員函數 162 7.5 格式化I/O流 165 7.5.1 使用格式狀態標志或調用格式化成員函數 165 7.5.2 使用操縱算子 169 7.6 文件操作 171 7.6.1 文件與文件流概述 171 7.6.2 文件流的類層次 172 7.6.3 文件的打開和關閉 172 7.6.4 文件讀寫操作 173 7.7 隨機訪問數據文件 177 7.8 程序設計實例 179 本章小結 180 習題7 181 第三部分 應用篇 第8章 MFC編程技術 184 8.1 MFC編程模式 184 8.2 利用MFC AppWizard創建 Windows 應用程序 185 8.3 MFC應用程序的類和 文件 186 8.3.1 類說明 186 8.3.2 文件說明 187 8.4 Windows消息響應 190 8.4.1 利用ClassWizard編制消息響應 函數 190 8.4.2 Windows消息 192 8.4.3 消息發送與接收的基本過程和 機制 195 8.5 文檔/視圖結構 195 8.5.1 文檔類 195 8.5.2 視圖類 198 8.6 菜單與工具欄 199 8.7 對話框與控件 201 8.7.1 對話框 201 8.7.2 控件 207 8.8 程序設計實例 209 本章小結 217 習題8 218 第9章 數據庫編程 220 9.1 數據庫訪問技術概述 220 9.2 ODBC編程技術 222 9.3 ADO編程技術 228 9.3.1 ADO技術簡介 228 9.3.2 ADO對像模型 229 9.3.3 使用ADO對像開發數據庫應用 程序 230 本章小結 241 習題9 242 0章 圖形繪制 245 10.1 設備環境和設備環境類 245 10.1.1 設備環境 245 10.1.2 圖形設備接口 246 10.1.3 設備環境類 246 10.1.4 獲取設備環境的幾種方法 248 10.2 坐標映射 249 10.3 幾種常用的圖形數據結構和類 250 10.4 繪圖工具類 253 10.4.1 使用GDI對像 254 10.4.2 CPen類和CBrush類 255 10.4.3 簡單圖形的繪制 262 10.4.4 CFont類 269 10.4.5 CBitmap類 281 10.4.6 顯示位圖 282 10.4.7 動畫圖形的制作 285 本章小結 289 習題10 289 1章 綜合實訓 292 11.1 控制臺應用程序:商品信息管理 繫統 292 11.2 MFC編程:班級信息管理繫統 298 11.3 圖形繪制:圖像局部放大實現 312 本章小結 315 習題11 316 附錄 標準ASCII碼表 319 參考文獻 320
內容簡介
本書分為3篇,部分基礎篇,講授程序設計概述及C++語法基礎內容;第二部分核心篇,圍繞類與對像、繼承與派生、多態性與虛函數、運算符重載與類模板、流等內容展開;第三部分應用篇,講授MFC編程技術、數據庫編程技術、圖形繪制等內容。