C++程序設計教程
-
【作 者】楊國興 張東玲主編 鄭有增主審
【I S B N 】978-7-5084-3838-2
【責任編輯】張玉玲
【適用讀者群】高職高專
【出版時間】2008-06-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】2006年07月第1版
【頁 數】236
【千字數】
【印 張】
【定 價】¥22
【叢 書】21世紀高職高專新概念教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書從實際編程需要出發,通過大量的實例介紹C++語言以及面向對象程序設計方法。主要內容包括:數據類型與表達式,C++控制語句,函數,數組與指針,類與對象,繼承與派生,多態型,模板,輸入輸出流等。
與本書配套的習題解答和實驗指導書也將同時出版,除了本教材習題的解答之外,還收集了大量的綜合練習題,幫助學生復習鞏固所學知識。
本書可作為大專院校C++程序設計或面向對象程序設計教材,同時對使用C++進行程序開發的技術人員也有一定的參考價值。 為方便教師教學和學生學習,提供兩套電子教案,一套是PowerPoint文件格式,另一套是HTML幫助文件格式。
C++是近年來被廣泛使用的計算機程序設計語言之一。C++語言是由C語言發展而來的,它保留了C語言的特點,同時又完全支持面向對象的程序設計。本書從程序設計的需要出發介紹C++語言的基本知識和面向對象的編程技術,重點介紹實際程序設計需要的知識以及對于理解C++語言非常重要的內容,而不是面面俱到,糾纏語法細節。比如要記住運算符的優先級是非常不容易的,其實這些內容并不是很重要,只要適當使用括號就可以解決問題,而且使用括號還可以提高程序的可讀性。在介紹C++語言的具體內容時,盡量使用較簡單的例子,通過實例掌握語法知識。本書的所有例題都在Visual C++ 6.0環境下調試通過。為了方便教師教學與學生學習,本書提供了兩種形式的電子教案:一種是用PowerPoint制作的,方便教師根據具體情況進行必要的修改;另一種是用HTML Help Workshop制作的,方便學生學習時使用,使用它可以方便地查找到需要的內容。
本書共分10章:第1章主要介紹C++與面向對象程序設計的特點以及Visual C++ 6.0開發環境;第2章介紹C++的基本數據類型、常用的運算符以及結構、聯合、枚舉等數據類型;第3章介紹C++的各種控制語句,重點介紹選擇結構與循環結構程序的實現;第4章介紹C++函數的定義和使用、參數與返回值、遞歸調用、內聯函數、函數重載、帶默認參數值的函數以及變量的存儲類別等;第5章介紹數組、指針與字符串,包括一維數組、二維數組、字符數組、指針、指針數組、多級指針以及指針或數組作為函數的參數、動態分配存儲空間等內容;第6章介紹類的有關知識,包括類與對象的概念、構造函數與析構函數、類的組合、友元、類的靜態成員以及對象數組與對象指針等內容;第7章主要介紹繼承與派生的有關內容,包括繼承方式、派生類的構造與析構過程、多重繼承與虛基類等;第8章主要介紹運算符重載、虛函數以及抽象類等內容;第9章主要介紹函數模板和類模板;第10章主要介紹I/O流類庫的層次結構、格式化輸入輸出、I/O流類庫的文件輸入/輸出功能等。
本書由楊國興、張東玲主編,鄭有增主審。另外參加本書編寫工作的還有謝永紅、宋晏、嚴婷、王京京、朱紅、莊鳳娟、張道明、陳志遠、吳林林等。由于作者水平有限,書中難免有不妥之處,懇請專家和讀者批評指正。 編 者 2006年3月
前言
第1章 C++與面向對象程序概述 1
1.1 程序設計語言的發展 1
1.1.1 機器語言 1
1.1.2 匯編語言 1
1.1.3 高級語言 2
1.2 面向對象程序設計的特點 3
1.2.1 面向對象程序設計的基本概念 3
1.2.2 面向對象程序設計的特點 3
1.3 C++語言的特點 4
1.4 簡單的C++程序 4
1.4.1 cout 標準輸出 4
1.4.2 cin標準輸入 5
1.5 Visual C++ 6.0編程環境簡介 5
1.5.1 Visual C++ 6.0界面介紹 6
1.5.2 編輯、編譯和運行程序 6
1.5.3 程序調試 9
習題 10
第2章 數據類型與表達式 11
2.1 基本數據類型 11
2.1.1 整型數據 11
2.1.2 實型數據 12
2.1.3 字符型數據 12
2.1.4 bool型數據 12
2.2 常量與變量 13
2.2.1 常量 13
2.2.2 變量 16
2.3 運算符與表達式 16
2.3.1 算術運算符與算術表達式 16
2.3.2 賦值運算符與賦值表達式 19
2.3.3 關系運算符與關系表達式 19
2.3.4 邏輯運算符與邏輯表達式 20
2.3.5 條件運算符 21
2.3.6 sizeof運算符 21
2.4 位運算符 22
2.4.1 位運算符 22
2.4.2 位運算符應用舉例 23
2.5 C++的構造類型 24
2.5.1 結構 24
2.5.2 聯合 25
2.5.3 枚舉 27
習題 27
第3章 C++控制語句 30
3.1 C++語句概述 30
3.2 選擇結構 31
3.2.1 if語句 31
3.2.2 switch語句 35
3.2.3 程序舉例 36
3.3 循環結構 39
3.3.1 while語句 39
3.3.2 do…while語句 40
3.3.3 for語句 41
3.3.4 continue 語句、break語句與goto語句 42
3.3.5 程序舉例 45
習題 46
第4章 函數 48
4.1 函數的定義與使用 48
4.1.1 函數的定義 48
4.1.2 函數的聲明與調用 50
4.2 函數的參數傳遞 51
4.2.1 值傳遞 51
4.2.2 使用引用 52
4.3 函數的嵌套調用 53
4.4 函數的遞歸調用 56
4.5 內聯函數 59
4.6 函數重載 60
4.7 帶默認參數值的函數 61
4.7.1 帶默認參數值的函數 62
4.7.2 帶默認參數值函數產生的二義性 63
4.8 變量的存儲類別 63
4.8.1 內部變量與外部變量 63
4.8.2 變量的存儲類別 65
4.9 程序舉例 67
習題 69
第5章 數組、指針與字符串 71
5.1 數組 71
5.1.1 一維數組 71
5.1.2 二維數組 74
5.1.3 字符數組 77
5.2 指針 83
5.2.1 地址與指針的概念 83
5.2.2 指針運算 86
5.2.3 用指針處理數組 88
5.3 動態內存分配 89
5.4 指針作為函數的參數 91
5.4.1 指針變量作為函數的參數 91
5.4.2 數組作為函數的參數 92
5.5 指針數組與多級指針 94
5.5.1 指針數組 94
5.5.2 多級指針 95
5.6 程序舉例 97
習題 99
第6章 類與對象 101
6.1 類與對象 101
6.1.1 類與對象的概念 101
6.1.2 類的聲明 101
6.1.3 成員的訪問控制 104
6.1.4 類的成員函數 105
6.2 構造函數與析構函數 106
6.2.1 構造函數 107
6.2.2 析構函數 108
6.2.3 拷貝構造函數 111
6.3 類的組合 113
6.4 友元 116
6.4.1 友元函數 116
6.4.2 友元類 118
6.5 靜態成員 119
6.5.1 靜態數據成員 119
6.5.2 靜態成員函數 122
6.6 對象數組與對象指針 124
6.6.1 對象數組 124
6.6.2 對象指針 126
6.7 this指針 127
習題 130
第7章 繼承與派生 133
7.1 類的繼承與派生 133
7.1.1 繼承與派生的基本概念 133
7.1.2 派生類的聲明 134
7.2 類的繼承方式 136
7.2.1 公有繼承 136
7.2.2 保護繼承 137
7.2.3 私有繼承 139
7.2.4 程序舉例 140
7.3 派生類的構造過程和析構過程 143
7.3.1 派生類的構造過程 143
7.3.2 派生類的析構過程 145
7.3.3 程序舉例 146
7.4 多繼承 149
7.4.1 多繼承的構造與析構 149
7.4.2 多繼承的二義性 151
7.4.3 虛基類 155
7.4.4 程序舉例 159
習題 161
第8章 多態性 165
8.1 運算符重載 165
8.1.1 問題的提出 165
8.1.2 運算符重載的格式與規則 167
8.2 運算符重載為類的成員函數 168
8.2.1 雙目運算符重載 168
8.2.2 單目運算符重載 170
8.2.3 賦值運算符重載 172
8.3 運算符重載為類的友元函數 175
8.3.1 問題的提出 175
8.3.2 運算符重載為友元函數 175
8.4 虛函數 177
8.4.1 用虛函數實現動態多態 177
8.4.2 虛函數實現動態多態的機制 180
8.4.3 虛析構函數 181
8.4.4 純虛函數與抽象類 183
習題 184
第9章 模板 189
9.1 函數模板 189
9.2 模板函數的覆蓋 192
9.3 類模板 194
9.4 程序舉例 198
習題 200
第10章 輸入/輸出流 202
10.1 輸入/輸出流概述 202
10.1.1 流的概念 202
10.1.2 流類庫的結構 203
10.2 插入運算符及提取運算符 206
10.3 格式化輸入輸出 206
10.3.1 輸出寬度控制setw和width 207
10.3.2 填充字符控制setfill和fill 208
10.3.3 輸出精度控制setprecision和precision 208
10.3.4 其他格式狀態 209
10.4 文件的輸入輸出 210
10.4.1 打開文件 210
10.4.2 寫入文件 212
10.4.3 讀取文件 213
10.4.4 文件讀寫位置指針 215
10.4.5 錯誤處理函數 216
10.4.6 關閉文件 216
10.5 輸入輸出文件流fstream 216
習題 218
參考文獻 219
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]
- 數據挖掘算法—基于C++及CUDA C [蒂莫西•馬斯特斯(Timothy]
- C++程序設計簡明教程 [黃能耿 黃致遠 胡麗丹]
- Visual C++6.0程序項目案例教程 [朱 銘 曾強聰 編著]
- 嵌入式應用Qt_C++傳感數據采集開發實訓教程 [主編 劉和文 文燕 謝忠敏]
- C++程序設計簡明教程(第二版) [主 編 王曉東 副主編 陳艷海 ]
- C++ STL基礎案例教程 [鐘琪 著]
- C++程序設計基礎教程 [主編 劉志寶 朱偉華 謝利民]
- Visual C++ & Android程序設計綜合實訓(第二版) [主編 梁建武]
- Visual C++程序設計教程(第二版) [梁建武]
- C++應用程序設計 [劉彥姝 謝景偉]
- C++程序設計 [陳國志 叢華 單正 編著]
- C++面向對象程序設計習題解答及上機指導 [李素若 杜華兵]
- C++面向對象程序設計 [李素若 杜華兵]
- C/C++程序設計學習輔導 [李婷 李云峰 編著]
- C/C++程序設計 [李云峰 李婷 編著]
- 數字音頻規范與程序設計:基于Visual C++開發 [曹強 編著]
- C++程序設計基礎實踐教程 [主編 楊長興 李利明]
- C語言程序設計——Visual C++ 6.0環境(第二版) [張昕]
- C++程序設計(第二版) [主編 楊長興 劉衛國]
- C++程序設計實踐教程(第二版) [主 編 劉衛國 楊長興]
- C++程序設計基礎 [主編 楊長興]
- 數據結構(C++描述)習題解答及實習指導 [李根強 謝月娥 主編]
- 數據結構(C語言版)學習指導與習題解答 [趙堅 姜梅 主編]
- C++程序設計實驗指導與實訓 [蔡立軍 杜四春 銀紅霞 編著]
- C++程序設計 [杜四春 銀紅霞 蔡立軍 編著]
- 數據結構(C++描述) [李根強 主 編]