C++ 程序設計教程
徐紅雲、沃焱、鄭運平、李方
商品描述
"《C++程序設計教程》全面介紹C++語言面向過程和面向對象程序設計的相關知識和內容。全書共13章,主要內容包括緒論,基本語法,流程控制,函數,指針、引用、數組,位運算與結構,類與對象,運算符重載,繼承與派生,多態性,模板,文件操作,異常處理。書後附錄分別介紹了計算機基礎知識、程序調試的概念和方法、在線評測系統相關內容。書中列舉了大量應用案例,每章後均附有習題。 本書內容翔實,深入淺出,案例豐富,可讀性強。本書適合作為高等院校計算機類、信息類、電類等專業本科生“高級語言程序設計”“C++程序設計”等課程的教材,也可以作為培訓機構和C++自學者的參考書,還可以作為C++應用開發者的參考資料。 "
作者簡介
徐紅雲,女,華南理工大學計算機學院教授,博士;研究方向為:網絡安全、隱私保護、智能系統安全、雲安全;編寫《C++程序設計基礎》、《C語言基礎教程》、《Python程序設計教程》、《大學計算機基礎教程》、《大學計算機基礎實驗指導與習題集》、《網絡信息檢索》、《大學信息技術基礎》等教材, 公開發表國內外學術刊物和國際會議論文50多篇,授權發明專利12項. 獲國家教學成果二等獎、廣東省教學成果一等獎、廣東省教學成果二等獎、湖南省科技進步二等獎各一項.
目錄大綱
目〓錄
第1章緒論
1.1程序設計語言
1.1.1機器語言
1.1.2匯編語言
1.1.3高級語言
1.1.4C++語言
1.2程序設計方法
1.2.1程序流程圖
1.2.2結構化程序設計方法
1.2.3面向對象程序設計方法
1.2.4程序設計的步驟
1.3程序的運行過程
1.4C++語言開發環境
1.4.1命令行開發環境
1.4.2集成開發環境
1.4.3Microsoft Visual Studio 2022開發程序的步驟
1.5應用舉例
本章小結
習題1
第2章基本語法
2.1字符集與單詞
2.1.1字符集
2.1.2單詞
2.2變量與常量
2.2.1變量的定義
2.2.2變量的初始化
2.2.3變量的賦值
2.2.4常變量
2.2.5常量
2.3基本數據類型
2.3.1整型
2.3.2浮點型
2.3.3字符型
2.3.4布爾型
2.3.5用cin讀入各種類型變量的值
2.3.6用auto進行自動類型推斷
2.4表達式
2.4.1運算符
2.4.2算術表達式
2.4.3邏輯表達式
2.4.4賦值表達式
2.4.5條件表達式
2.4.6逗號表達式
2.4.7用cout輸出表達式的值
2.5應用舉例
本章小結
習題2
第3章流程控制
3.1選擇控制結構
3.1.1if語句
3.1.2ifelse語句
3.1.3if語句的嵌套
3.1.4switch語句
3.2循環控制結構
3.2.1while語句
3.2.2dowhile語句
3.2.3for語句
3.2.4循環語句的嵌套
3.3流程轉向語句
3.3.1break語句
3.3.2continue語句
3.3.3goto語句
3.4應用舉例
本章小結
習題 3
第4章函數
4.1函數的定義、聲明與調用
4.1.1函數的定義
4.1.2函數的調用
4.1.3函數原型
4.2函數的參數傳遞與返回
4.2.1函數參數的傳遞
4.2.2默認參數
4.2.3函數的返回
4.3嵌套調用與遞歸調用
4.3.1函數的嵌套調用
4.3.2函數的遞歸調用
4.4內聯函數和重載函數
4.4.1內聯函數
4.4.2函數重載
4.5變量的存儲特性與標識符的作用域
4.5.1變量的存儲特性
4.5.2標識符的作用域
4.6預處理指令與多文件結構
4.6.1預處理指令
4.6.2多文件結構
4.7命名空間
4.7.1標準命名空間
4.7.2定義命名空間
4.7.3使用命名空間
4.8應用舉例
本章小結
習題4
第5章指針、引用、數組
5.1指針變量的定義與初始化
5.1.1指針變量和間址
5.1.2空指針
5.1.3void*指針
5.1.4指向指針的指針
5.1.5指向常量的指針
5.1.6指針常量
5.1.7指向常量的指針常量
5.2引用
5.2.1引用的定義
5.2.2常引用
5.3指針、引用與函數
5.3.1函數參數的指針傳遞與引用傳遞
5.3.2函數指針
5.4數組
5.4.1一維數組
5.4.2二維數組
5.4.3字符串
5.4.4數組與函數
5.5動態存儲
5.6應用舉例
本章小結
習題5
第6章位運算與結構
6.1位運算
6.1.1位運算符
6.1.2使用位運算符實現集合運算
6.2結構
6.2.1定義結構
6.2.2訪問結構
6.2.3結構數組
6.2.4結構與函數
6.3鏈表
6.4應用舉例
本章小結
習題6
第7章類與對象
7.1類的定義與訪問
7.1.1定義類
7.1.2類對象的定義及訪問
7.1.3this指針
7.2構造函數和析構函數
7.2.1構造函數與析構函數基本概念
7.2.2構造函數的重載
7.2.3復制構造函數
7.3類的特殊成員
7.3.1對象成員
7.3.2常成員
7.3.3靜態成員
7.4友元
7.4.1私有與安全性
7.4.2友元函數與友元類
7.5應用舉例
本章小結
習題7
第8章運算符重載
8.1運算符重載的規則
8.2運算符重載的方法
8.2.1用成員函數重載
8.2.2用友元函數重載
8.2.3運算符重載方法的選擇
8.3幾個典型運算符的重載
8.3.1自增與自減運算符
8.3.2賦值運算符
8.3.3重載運算符[ ]和()
8.3.4輸入輸出運算符
8.4類類型轉換
8.5應用舉例
本章小結
習題8
第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.4.1多繼承
9.4.2虛繼承
9.5應用舉例
本章小結
習題9
第10章多態性
10.1靜態多態
10.1.1函數重載實現靜態多態
10.1.2模板實現靜態多態
10.2動態多態與虛函數
10.2.1為什麼要用動態多態
10.2.2虛函數
10.2.3虛函數重寫
10.2.4虛析構函數
10.3抽象類
10.3.1純虛函數與抽象類
10.3.2從抽象類派生具體類
10.4應用舉例
本章小結
習題10
第11章模板
11.1模板的概念
11.1.1定義和使用模板
11.1.2模板中的typename
11.1.3類型形參
11.1.4非類型形參
11.1.5模板作為模板形參
11.1.6默認模板參數
11.2函數模板
11.2.1函數模板的定義及實例化
11.2.2函數模板的實例化
11.2.3函數模板調用的重載解析
11.3類模板
11.3.1類模板的定義
11.3.2類模板的實例化
11.3.3類模板的成員函數
11.3.4模板友元
11.4模板示例
11.4.1數組類模板
11.4.2向量類模板
11.5字符串類
11.5.1string類的初始化
11.5.2string類的運算符
11.5.3string類的其他公有成員函數
11.5.4string類的輸入輸出函數
11.6應用舉例
本章小結
習題11
第12章文件操作
12.1流類和流對象
12.1.1I/O流類庫
12.1.2C++預定義標準流對象
12.2標準流和流操作
12.2.1標準輸入輸出流
12.2.2格式化輸入函數
12.2.3無格式輸入函數
12.2.4格式化輸出函數
12.2.5無格式輸出函數
12.3格式控制
12.3.1流類的控制信息
12.3.2流的狀態標誌及函數
12.3.3流的格式標誌及輸入輸出操縱符
12.4文件和流
12.4.1文件流類
12.4.2文本文件與二進制文件的概念
12.4.3文件的處理步驟
12.5文本文件操作
12.5.1創建文本文件
12.5.2向文本文件中追加記錄
12.5.3讀取文本文件
12.6二進制文件操作
12.6.1創建二進制文件
12.6.2讀取二進制文件
12.7應用舉例
本章小結
習題12
第13章異常處理
13.1異常處理的概念
13.1.1異常代碼示例
13.1.2異常與斷言
13.1.3異常使用的基本準則
13.2傳統的錯誤處理方法
13.2.1終止程序
13.2.2返回錯誤碼
13.2.3日誌記錄
13.3C++異常處理
13.3.1標準異常類
13.3.2異常對象
13.3.3異常處理機制及語法規則
13.3.4棧展開
13.4應用舉例
本章小結
習題13
參考文獻
附錄A計算機基礎知識
附錄BC++程序調試
附錄C在線評測系統簡介