《C++高級語言程序設計》將C++語言作為大學生學習程序設計的入門語言。全書共9章,第1章、第3章、第5章講解程序的結構和組織,第2章、第4章、第6章討論數據類型和數據的組織,第7章、第8章、第9章講述面向對象的程序設計。
本書的編寫目的是為學生打好程序設計的基礎,因此,特別注意在介紹基本概念和基本方法的同時,重視良好編程習慣的培養。另外,專業術語配有英文。
本書內容全面,重點突出,深入淺出,同時配有大量習題,適合作為大學各專業的程序設計課程入門教材,也可以作為程序設計基礎的培訓教材和自?參考書。
第1章 C++初步
1.1 程序設計語言的發展
1.2 面向過程的程序設計
1.3 面向對象程序設計
1.4 C++的誕生
1.5 程序開發過程
1.6 最簡單的C++程序
1.7 內存的抽象表示和使用
本章小結
習題和思考題
第2章 基本數據類型與表達式
2.1 C++的詞法記號和標識符
2.1.1 字符集
2.1.2 關鍵字
2.1.3 標識符
2.1.4 分隔符
2.1.5 空白
2.2 基本數據類型
2.3 變量和常量
2.3.1 ?量
2.3.2 常量
2.4 運算符和表達式
2.4.1 表達式
2.4.2 語句和塊
2.4.3 運算符
2.5 基本輸入/輸出
2.5.1 標準輸入流
2.5.2 標準輸出流
2.5.3 I/O流的格式控制
2.5.4 文件的輸入和輸出
2.6 使用string類型處理字符串
2.6.1 string對象的定義和初始化
2.6.2 string對象的操作
本章小結
習題和思考題
第3章 C++控制語句
3.1 算法的基本控制結構
3.1.1 程序的3種控制結構
3.1.2 算法及其表示
3.2 if選擇語句
3.2.1 沒有else分支的形式
3.2.2 雙分支形式
3.2.3 多分支形式
3.2.4 if語句的嵌套
3.3 switch選擇語句
3.4 循環語句
3.4.1 while循環語句
3.4.2 do-while循環語句
3.4.3 for循環語句
3.4.4 break語句和continue語句
3.5 循環嵌套
3.5.1 循環結構嵌套
3.5.2 循環結構和選擇結構的相互嵌套
3.6 應用舉例
本章小結
習題和思考題
第4章 數組及其他自定義類型
4.1 數組
4.1.1 數組定義及初始化
4.1.2 訪問數組元素
4.1.3 字符數組
4.1.4 多維數組
4.1.5 數組應用舉例
4.1.6 數組小結
4.2 枚舉類型
4.2.1 枚舉類型定義
4.2.2 枚舉變量定義及使用
4.2.3 應用舉例
4.3 結構類型
4.3.1 結構類型的定義和初始化
4.3.2 結構數組
4.4 聯合類型
本章小結
習題和思考題
第5章 函數
5.1 函數概述
5.1.1 自定義函數概述
5.1.2 庫?數概述
5.2 函數定義及使用
5.2.1 函數的定義
5.2.2 函數原型
5.2.3 return語句
5.2.4 函數調用方式
5.3 函數調用的執行機制和參數傳遞方式
5.3.1 函數調用的執行機制
5.3.2 函數的參數傳遞方式
5.4 遞歸函數和遞歸調用
5.4.1 嵌套調用
5.4.2 遞歸函數和遞歸調用
5.5 內聯函數
5.6 重載函數
5.7 默認參數值的函數
5.8 全局變量與局部變量
5.8.1 局部變量
5.8.2 全局變量
5.8.3 作用域
5.9 變量的存儲類型和生存期
5.9.1 變量的存儲類型
5.9.2 生存期
5.9.3 多文件結構
5.10 編譯預處理
5.11 結構化程序設計舉例
本章小結
習題和思考題
第6章 指針和引用
6.1 指針的概念
6.1.1 指針和指針變量
6.1.2 指針變量的聲明和初始化
6.2 指針的運算
6.2.1 指針的賦值運算
6.2.2 指針的間接引用運算
6.2.3 指針的算術運算
6.2.4 指針的關系運算和邏輯運?
6.2.5 void類型指針
6.2.6 指針類型轉換
6.3 指針訪問動態內存
6.3.1 動態內存的申請和釋放
6.3.2 動態數組空間的申請和釋放
6.3.3 內存泄漏和指針懸掛
6.4 指向結構體的指針
6.5 引用概念
6.5.1 引用的聲明
6.5.2 引用的使用
6.6 指針和引用作為函數的參數
6.6.1 指針作為函數參數
6.6.2 引用作為函數參數
6.6.3 常指針和常引用
6.6.4 指針的指針作為參數
6.7 指針和引用作為函數的返?值
6.7.1 指針函數
6.7.2 引用作為函數的返回值
6.8 指針和字符串
6.8.1 字符串處理的兩種方式
6.8.2 字符串操作函數
6.9 通過指針訪問數組
6.9.1 通過指針訪問一維數組
6.9.2 指針數組
本章小結
習題和思考題
第7章 類與對象
7.1 類和對象的定義
7.1.1 基本概念
7.1.2 類的聲明
7.1.3 類的實現
7.1.4 對象的定義和使用
7.1.5 類的作用域與可見性
7.2 對象的使用
7.2.1 對象指針
7.2.2 this指針
7.2.3 對象數組
7.2.4 對象作為普通函數的參數與返回值
7.3 構造函數
7.4 析構函數
7.5 類的靜態成員
7.5.1 靜態數據成員
7.5.2 靜態成員函數
7.6 類成員的保護和使用
7.6.1 類的封裝性
7.6.2 友元
7.6.3 常對象和常成員
7.7 運算符重載
7.7.1 運算符重載的使用及其限制
7.7.2 運算符重載的定義
7.8 類的組合
7.9 應用舉例
7.10 面向對象分析和設計
7.10.1 軟件工程
7.10.2 面向對象分析
7.10.3 面向對象設計
7.10.4 面向對象的意義
本章小結
習題和思考題
第8章 繼承與派生
8.1 繼承的概念
8.2 定義基類和派生類
8.2.1 簡單的繼承和派生
8.2.2 定義派生類
8.2.3 訪問控制和繼承的關系
8.2.4 同名覆蓋
8.3 構造函數和析構函數
8.3.1 基類只有無參構造函數
8.3.2 派生類構造函數
8.3.3 包含內嵌對象的派生類構造函數
8.3.4 析構函數
8.4 轉換與繼承
8.4.1 派生類到基類的轉換
8.4.2 基類到派生類不存在轉換
本章小結
習題和思考題
第9章 多態
9.1 多態的概念
9.1.1 面向對象程序設計中的多態
9.1.2 多態的實現——聯編
9.2 重載、覆蓋與靜態聯編
9.2.1 重載與靜態聯編
9.2.2 覆蓋與靜態聯編
9.3 虛函數與運行時多態
9.3.1 虛函數
9.3.2 虛析構函數
9.4 純虛函數與抽象類
9.5 模板
9.5.1 函數模板
9.5.2 函數模板使用中的問題
9.5.3 重載函數模板
9.5.4 類模板
本章小結
習題和思考題
附錄 常用C++標準類庫
附1 I/O流類
附1.1 標準輸出流對象
附1.2 標準輸入流對象
附1.3 文件輸出流
附1.4 文件輸入流
附2 string類
附2.1 string對象的初始化
附2.2 string對象的基本操作
附3 vector類
參考文獻