第一章 引論
1.1 面向過程和面向對象程序設計方法
1.1.1 面向過程程序設計方法
1.1.2 面向對象程序設計
1.2 C語言與C++語言
1.2.1 C語言
1.2.2 C++語言
1.3 面向對象的目標
1.4 面向對象語言的核心概念
1.4.1 數據封裝
1.4.2 繼承
1.4.3 多態(tài)性
1.4.4 類屬
1.4.5 消息
1.5 按對象方式思維
1.6 面向對象的思想和方法
1.6.1 面向對象是一種認知方法學
1.6.2 面向對象與軟件IC
1.6.3 面向對象方法與結構程序設計方法
1.6.4 對象是抽象數據類型的實現(xiàn)
1.6.5 面向對象的建模與UML
1.7 面向對象的程序設計語言
1.8 C++編程實踐
1.8.1 一個簡單的C++程序
1.8.2 開發(fā)C++程序的步驟
1.8.3 VisualC++集成開發(fā)環(huán)境中的程序實現(xiàn)
第二章 C++:一個更好的C
2.1 C++語言基礎
2.1.1 字符集
2.1.2 C++的數據類型
2.1.3 常量和變量
2.1.4 運算符
2.1.5 基本語句
2.1.6 構造數據類型
2.1.7 指針與字符串
2.1.8 作用域和存儲類型
2.2 C++的輸入和輸出
2.3 new和delete
2.4 注解
2.5 內聯(lián)函數
2.6 const說明符
2.7 函數原型
2.8 缺省參數
2.9 重載函數
2.10 引用(reference)
2.11 顯式類型轉換
練習題
第三章 類類型
3.1 類與對象
3.1.1 類的例子
3.1.2 類的私有數據
3.1.3 C++的類
3.1.4 類與對象
3.1.5 類的定義和實現(xiàn)
3.2 構造函數和析構函數
3.2.1 簡單的構造函數和析構函數
3.2.2 參數化的構造函數
3.2.3 重載構造函數與拷貝構造函數
3.2.4 類的對象的初始化
3.3 關鍵字this
3.4 靜態(tài)成員
3.4.1 靜態(tài)數據成員
3.4.2 靜態(tài)成員函數
3.5 友元關系
3.5.1 友元函數
3.5.2 友元函數與成員函數
3.5.3 友元類
3.5.4 友元的例子
3.6 類類型常量
3.7 一個類的對象作為另一個類的成員
3.8 對象數組
3.9 指向對象的指針變量
3.10 類類型做參數類型
3.11 類屬單向同質鏈表的例子
練習題
第四章 運算符重載
4.1 重載運算符
4.1.1 運算符重載的語法形式
4.1.2 一元和二元運算符
4.1.3 用成員函數重載運算符
4.1.4 用友元函數重載運算符
4.1.5 重載++和--
4.1.6 重載賦值運算符
4.1.7 重載運算符()和[]
4.2 自由存儲
4.2.1 new和delete的語法
4.2.2 new和delete典型用法
4.2.3 指針懸掛問題
4.2.4 new和delete的重載
4.3 類型轉換
4.3.1 標準類型轉換為類類型
4.3.2 類類型轉換函數
練習題
第五章 派生類
5.1 派生類的概念
5.1.1 基類與派生類
5.1.2 為什么使用繼承
5.1.3 保護段
5.1.4 基類的訪問描述符
5.1.5 基類對象的初始化
5.1.6 Point類——繼承的一個例子
5.2 多繼承
5.2.1 多繼承的概念
5.2.2 虛基類
5.3 虛函數與多態(tài)性
5.3.1 指向基類對象的指針指向派生類對象
5.3.2 異制鏈表
5.3.3 虛函數
5.3.4 虛析構函數
5.3.5 多態(tài)性的概念
5.3.6 純虛函數及抽象類
5.3.7 Figure模塊——虛函數的例子
5.4 繼承的意義
5.4.1 模塊的觀點
5.4.2 類型的觀點
練習題
第六章 流庫
6.1 C++為何有自己的I/O系統(tǒng)
6.2 C++流庫的結構
6.3 輸入和輸出
6.3.1 iostream類庫的頭文件
6.3.2 輸入/輸出流類和對象
6.3.3 istream
6.3.5 輸出運算符“>”
6.4 格式控制
6.4.1 用ios類成員函數格式化
6.4.2 用操縱函數控制格式
6.5 文件I/O
6.5.1 文件的打開和關閉
6.5.2 文件的讀寫
第七章 模板
7.1 類屬的概念
7.1.1 無約束類屬機制
7.1.2 約束類屬機制
7.2 模板的概念
7.2.1 函數模板與模板函數
7.2.2 類模板與模板類
7.3 模板設計的例子
7.3.1 鏈表類模板解決方案
7.3.2 用模板實現(xiàn)塊的劃分
7.4 Container類庫的結構
7.5 標準模板庫sTL概述
第八章 面向對象設計技術
8.1 什么是OOP技術
8.1.1 OOP技術概述
8.1.2 六種典型的面向對象開發(fā)方法
8.2 面向對象設計的直觀方法
8.3 數據庫應用的例子
8.3.1 問題簡述
8.3.2 基本結構
8.3.3 粗略設計
8.3.4 進一步設計
8.3.5 對象的操作
8.3.6 設計流程圖
8.3.7 面向對象編程
第九章 命名空間與異常
9.1 命名空問
9.1.1 命名空間的意義
9.1.2 using聲明
9.1.3 匿名命名空間
9.1.4 標準命名空間std
9.2 異常
9.2.1 異常處理的基礎知識
9.2.2 捕獲所有異常
9.2.3 指定由函數拋出的異常
9.3 標準異常
附錄
附錄一 Visual C++集成環(huán)境使用簡介
附錄二 C#語言
參考文獻