本書將面向對象思想理論與C++程序設計相結合,以幾個C++實例貫穿教材始終,使讀者能夠由淺入深、循序漸進地學習,從實例出發,理解掌握面向對象程序設計思想。全書共分11章: 第1章介紹面向對象程序設計的基礎知識; 第2章簡述VC++ 6.0開發環境; 第3章介紹C++語言所需要的C語言基礎; 第4章講述類與對象; 第5章講述繼承與派生; 第6章講述面向對象的多態性; 第7章介紹C++中模板的使用方法; 第8章闡述輸入/輸出流; 第9章闡述C++中的異常處理方法; 第10章以一個綜合示例描述面向對象程序設計方法; 第11章講述標準建模語言UML及其應用技術。
第一部分理 論 知 識
章1章面向對象程序設計的基礎知識
1.1程序設計思想的發展
1.1.1程序設計方法的發展
1.1.2面向機器的語言
1.1.3面向過程的語言
1.1.4面向對象的語言
1.1.5用于編寫可視化程序的語言
1.2面向對象程序設計的基本概念
1.2.1對象
1.2.2類
1.2.3面向對象程序設計的三大特性
1.3C++語言的基本程序結構
1.3.1C++語言簡介
1.3.2C++的基本程序結構
1.3.3C++的程序運行
1.4面向對象程序設計過程
1.5習題1
第2章VC++ 6.0開發環境簡介
2.1安裝Visual C++
2.2Visual C++ 6.0工作平臺
2.2.1Visual C++ 6.0基本用戶界面
2.2.2菜單命令簡介
2.2.3工具欄簡介
2.3編譯與運行控制臺工程
2.4其他C++程序編輯環境簡介
2.4.1DEV
2.4.2Visual C++ 20XX
2.5習題2
第3章C++語言初步
3.1基本數據類型
3.1.1數據類型概述
3.1.2常用數據類型應用
3.1.3保留字與標識符
3.1.4變量
3.1.5常量
3.1.6構造數據類型
3.2表達式與類型轉換
3.2.1表達式
3.2.2自動類型轉換
3.2.3強制類型轉換
3.3指針
3.3.1指針的定義與使用
3.3.2指針與數組
3.3.3指針運算
3.3.4動態內存申請
3.4基本控制結構
3.4.1簡單的輸入/輸出語句
3.4.2條件語句
3.4.3循環語句
3.4.4轉移語句
3.5函數
3.5.1普通函數定義
3.5.2普通函數的調用機制
3.5.3函數與引用
3.5.4函數與const
3.5.5內聯函數
3.5.6帶有缺省參數的函數
3.6習題3
第4章類與對象
4.1類
4.1.1類的定義
4.1.2類的實現
4.2對象
4.2.1對象的創建
4.2.2this指針與對象的封裝
4.2.3類的定義與頭文件
4.3構造函數
4.3.1對象的初始化方法
4.3.2構造函數的定義
4.3.3構造函數的調用
4.3.4缺省構造函數
4.3.5復制構造函數
4.4析構函數
4.5構造函數與類型轉換
4.6友元
4.6.1友元函數
4.6.2友元類
4.6.3友元的使用
4.7static成員
4.7.1靜態成員的定義與使用
4.7.2靜態成員綜合實例
4.8對象成員
4.8.1對象成員的概念
4.8.2對象成員的初始化
4.9const與volatile
4.9.1const型數據成員與volatile型數據成員
4.9.2返回c_v的成員函數
4.9.3const成員與volatile成員
4.10習題4
第5章繼承與派生
5.1繼承的基本概念
5.2單一繼承
5.2.1單一繼承定義格式
5.2.2賦值兼容性
5.3繼承與構造函數、析構函數
5.4派生類
5.4.1保護成員
5.4.2派生類成員的訪問控制
5.5多重繼承
5.5.1多重繼承的語法形式
5.5.2二義性及其支配規則
5.6虛基類
5.6.1重復繼承
5.6.2虛基類的概念
5.7優化類層次設計
5.7.1抽象與具體
5.7.2封裝與開放
5.7.3繼承與組合
5.7.4綜合實例
5.8繼承與類庫
5.9習題5
第6章多態性
6.1多態性的基本概念
6.1.1程序的多態性
6.1.2函數調用捆綁
6.2函數重載
6.2.1普通函數重載
6.2.2函數重載的注意事項
6.2.3成員函數的重載
6.3運算符重載
6.3.1“=”的重載
6.3.2“++”的重載
6.3.3“[]”的重載
6.4特殊運算符重載
6.4.1類型符重載
6.4.2運算符重載規則
6.5虛函數
6.5.1虛函數的概念
6.5.2虛函數的使用
6.5.3重載、覆蓋和虛函數機制的區別
6.6純虛函數與抽象類
6.6.1純虛函數
6.6.2抽象類
6.6.3多態數據結構
6.7虛析構函數
6.8習題6
第7章模板
7.1模板的概念
7.1.1引入模板的意義
7.1.2定義模板的方法
7.2函數模板
7.2.1函數模板的定義與實例化
7.2.2函數模板的重載
7.3類模板
7.3.1類模板的定義
7.3.2類模板的實例化
7.3.3多參數類模板
7.4模板與繼承
7.4.1類模板的繼承與派生
7.4.2類模板與繼承的關系
7.5習題7
第8章輸入/輸出流
8.1C++的流類庫
8.1.1流類庫的基本結構
8.1.2支持文件的流類體系
8.1.3支持字符串的流類體系
8.2重載流的插入與提取
8.2.1重載流的插入操作
8.2.2重載流的提取操作
8.2.3重載流的完整實例
8.3格式化輸入與輸出
8.3.1使用ios類的成員函數
8.3.2格式化輸入/輸出函數
8.4文件操作
8.4.1文件的打開與關閉
8.4.2文本文件操作
8.4.3二進制文件操作
8.4.4隨機文件操作
8.5流的錯誤處理
8.6習題8
第9章異常處理
9.1異常處理機制
9.1.1異常處理概述
9.1.2異常處理的實現
9.1.3異常處理的過程
9.2異常處理基本方法
9.2.1異常處理示例
9.2.2捕獲所有的異常
9.2.3異常處理中的構造與析構函數
9.2.4異常說明的函數原型
9.3習題9
第10章面向對象程序設計方法
10.1面向對象程序設計過程
10.1.1面向對象的程序
10.1.2面向對象的程序設計步驟
10.1.3構造一個解題模型
10.1.4標識對象
10.1.5標識對象間的關系
10.1.6建立對象的類描述
10.1.7實現各個對象
10.2實例討論
10.2.1構造一個解題模型
10.2.2標識對象
10.2.3標識對象間的關系
10.2.4建立對象的類描述
10.2.5實現各個對象
10.3習題10
第11章標準建模語言及其應用
11.1標準建模語言概述
11.1.1標準建模語言的發展
11.1.2標準建模語言的主要特點
11.1.3標準建模語言的內容
11.1.4標準建模語言的應用領域
11.2UML的模型、視圖與系統架構建模
11.2.19種圖及其功能
11.2.2視圖
11.2.3UML中的模型元素
11.3用例建模
11.3.1用例模型
11.3.2角色
11.3.3用例
11.4類和對象建模
11.4.1類和對象
11.4.2關系
11.4.3約束與派生
11.4.4包
11.4.5模板
11.5動態建模
11.5.1消息
11.5.2狀態圖
11.5.3順序圖
11.5.4合作圖
11.5.5活動圖
11.6物理體系結構建模
11.6.1邏輯體系結構
11.6.2物理體系結構
11.6.3構件圖
11.6.4配置圖
11.7使用UML的過程
11.7.1UML過程的基礎
11.7.2面向對象方法的一般過程
11.7.3Rational的統一過程
11.8習題11
第二部分實驗
實驗1面向對象程序設計的基礎知識
實驗2C++語言初步
實驗3類與對象
實驗4繼承與派生
實驗5多態性
實驗6模板
實驗7輸入/輸出流
實驗8異常處理
附錄A習題參考答案
參考文獻