-
>
闖進數學世界――探秘歷史名題
-
>
中醫基礎理論
-
>
當代中國政府與政治(新編21世紀公共管理系列教材)
-
>
高校軍事課教程
-
>
思想道德與法治(2021年版)
-
>
毛澤東思想和中國特色社會主義理論體系概論(2021年版)
-
>
中醫內科學·全國中醫藥行業高等教育“十四五”規劃教材
C++程序設計(第4版)(高等院校計算機基礎教育課程體系精選系列教材) 版權信息
- ISBN:9787302587613
- 條形碼:9787302587613 ; 978-7-302-58761-3
- 裝幀:簡裝本
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
C++程序設計(第4版)(高等院校計算機基礎教育課程體系精選系列教材) 本書特色
本書定位準確,概念清晰,深入淺出,取舍合理,以通俗易懂的語言對C++的許多難懂的概念作了透徹而通俗的說明,大大降低了初學者學習的困難,是初學者學習C++的優秀教材,榮獲全國高校出版社優秀暢銷書一等獎。本書可供各專業學生使用,也可作為計算機培訓班的教材以及自學教材。 譚浩強教授經典C++程序設計教材,全國高校出版社優秀暢銷書一等獎。
C++程序設計(第4版)(高等院校計算機基礎教育課程體系精選系列教材) 內容簡介
C++是近年來國內外廣泛使用的現代計算機語言。它既支持基于過程的程序設計,也支持面向對象的程序設計。國內許多高校開設了“C++程序設計”課程。但是,由于C++涉及概念很多,語法比較復雜,內容十分廣泛,使不少人感到學習難度較大,難以入門。
作者深入調查了大學的程序設計課程的現狀和發展趨勢,參閱了國內外數十種有關C++的教材,認真分析了讀者在學習中的困難和認識規律,設計了讀者易于學習的教材體系,出版了《C++程序設計》一書。廣大師生用后反映該書定位準確,概念清晰,深入淺出,取舍合理,以通俗易懂的語言對C++的許多難懂的概念做了透徹而通俗的說明,大大降低了初學者學習的困難,是初學者學習C++的優秀教材。
根據教學實踐的需要,作者對《C++程序設計》進行了多次修訂,現在出版《C++程序設計(第4版)》。本書從零起點介紹程序設計和C++,包括基于過程的程序設計、基于對象的程序設計和面向對象的程序設計。學習本書不需要C語言的基礎,書中基于過程的程序設計部分涵蓋了C語言程序設計的基本內容,因此本書實際上是一本C/C++教材,學習本書后既可以用C語言進行程序設計,也可以用C++進行程序設計。
為了便于教學,本書有《C++程序設計 (第4版)學習輔導》和《C++程序設計實踐指導》兩本配套教材,旨在幫助學生通過實踐掌握C++的編程方法。
本書內容全面,例題豐富,循序漸進,易于學習,即使沒有教師講授,讀者也能看懂書中的大部分內容。本書可供各專業學生使用,也可作為計算機培訓班的教材以及自學教材。
C++程序設計(第4版)(高等院校計算機基礎教育課程體系精選系列教材) 目錄
目錄
第1篇基 本 知 識
第1章C++的初步知識3
1.1從C到C++3
1.2*簡單的C++程序5
1.3C++程序的構成和書寫形式11
1.4C++程序的編寫和實現13
1.5關于C++上機實踐14
習題15
第2章數據的存儲、表示形式和基本運算18
2.1C++的數據類型18
2.2常量20
2.2.1什么是常量20
2.2.2數值常量20
2.2.3字符常量22
2.2.4符號常量25
2.3變量26
2.3.1什么是變量26
2.3.2變量名規則26
2.3.3定義變量27
2.3.4對變量賦初值28
2.3.5常變量28
2.4C++的運算符29
2.5算術運算符與算術表達式30
2.5.1基本的算術運算符30
2.5.2算術表達式和運算符的優先級與結合性30
2.5.3表達式中各類數值型數據間的混合運算30
2.5.4自增(++)和自減(--)運算符31
2.5.5強制類型轉換運算符32
2.6賦值運算符和賦值表達式33
2.6.1賦值運算符33
2.6.2賦值過程中的類型轉換33
2.6.3復合賦值運算符35
2.6.4賦值表達式35
2.7逗號運算符和逗號表達式36
習題37
第2篇基于過程的程序設計
第3章C++程序設計初步41
3.1基于過程的程序設計和算法41
3.1.1算法的概念41
3.1.2算法的表示42
3.2C++的程序結構和C++語句43
3.3賦值操作46
3.4C++的輸入與輸出46
3.4.1輸入流與輸出流的基本操作47
3.4.2在標準輸入流與輸出流中使用控制符49
3.4.3用getchar和putchar函數進行字符的輸入和輸出52
3.4.4用scanf和printf函數進行輸入和輸出53
3.5編寫順序結構的程序54
3.6關系運算和邏輯運算55
3.6.1關系運算和關系表達式56
3.6.2邏輯常量和邏輯變量57
3.6.3邏輯運算和邏輯表達式58
3.7選擇結構和if語句60
3.7.1if語句的形式60
3.7.2if語句的嵌套63
3.7.3條件運算符和條件表達式64
3.7.4多分支選擇結構與switch語句65
3.7.5編寫選擇結構的程序67
3.8循環結構和循環語句69
3.8.1用while語句構成循環70
3.8.2用do…while語句構成循環71
3.8.3用for語句構成循環72
3.8.4循環的嵌套74
3.8.5提前結束循環(break語句和continue語句)74
3.8.6編寫循環結構的程序75
習題80
第4章利用函數實現指定的功能83
4.1什么是函數83
4.1.1為什么需要函數83
4.1.2函數調用舉例84
4.1.3函數的分類85
4.2定義函數的一般形式85
4.2.1定義無參函數的一般形式85
4.2.2定義有參函數的一般形式86
4.3函數參數和函數的值86
4.3.1形式參數和實際參數86
4.3.2函數的返回值88
4.4函數的調用89
4.4.1函數調用的一般形式89
4.4.2函數調用的方式89
4.4.3對被調用函數的聲明和函數原型90
4.5函數的嵌套調用92
4.6函數的遞歸調用95
4.7內置函數98
4.8函數的重載100
4.9函數模板102
4.10有默認參數的函數104
4.11局部變量和全局變量106
4.11.1局部變量106
4.11.2全局變量107
4.12關于變量的聲明和定義109
4.13內部函數和外部函數110
4.13.1內部函數110
4.13.2外部函數110
4.14頭文件112
4.14.1頭文件的內容112
4.14.2關于C++標準庫和頭文件的形式113
習題113
第5章利用數組處理批量數據115
5.1為什么需要用數組115
5.2定義和引用一維數組116
5.2.1定義一維數組116
5.2.2引用一維數組的元素116
5.2.3一維數組的初始化117
5.2.4一維數組程序舉例117
5.3定義和引用二維數組119
5.3.1定義二維數組120
5.3.2引用二維數組的元素121
5.3.3二維數組的初始化121
5.3.4二維數組程序舉例122
5.4用數組作函數參數124
5.5字符數組128
5.5.1定義和初始化字符數組128
5.5.2字符數組的賦值與引用129
5.5.3字符串和字符串結束標志130
5.5.4字符數組的輸入輸出131
5.5.5使用字符串處理函數對字符串進行操作132
5.5.6字符數組應用舉例135
5.6C++處理字符串的方法——字符串類與字符串變量136
5.6.1字符串變量的定義和引用136
5.6.2字符串變量的運算137
5.6.3字符串數組138
5.6.4字符串運算舉例139
習題142
第6章善于使用指針與引用144
6.1什么是指針144
6.2變量與指針146
6.2.1定義指針變量146
6.2.2引用指針變量148
6.2.3用指針作函數參數150
6.3數組與指針155
6.3.1指向數組元素的指針155
6.3.2用指針變量作函數形參接收數組地址157
6.4字符串與指針160
6.5函數與指針162
*6.6void指針類型163
6.7有關指針的數據類型和指針運算的小結164
6.7.1有關指針的數據類型的小結164
6.7.2指針運算小結165
*6.8引用166
6.8.1什么是變量的引用166
6.8.2引用的簡單使用168
6.8.3引用作為函數參數169
習題172
第7章用戶自定義數據類型174
7.1結構體類型174
7.1.1為什么需要用結構體類型174
7.1.2結構體類型變量的定義方法及其初始化175
7.1.3引用結構體變量177
7.1.4結構體數組179
7.1.5指向結構體變量的指針181
7.1.6結構體類型數據作為函數參數184
7.1.7用new和delete運算符進行動態分配和撤銷存儲空間187
7.2枚舉類型188
7.3用typedef聲明新的類型名192
習題194
第3篇基于對象的程序設計
第8章類和對象的特性199
8.1面向對象程序設計方法概述199
8.1.1什么是面向對象的程序設計199
8.1.2面向對象程序設計的特點203
8.1.3類和對象的作用204
8.1.4面向對象的軟件開發205
8.2類的聲明和對象的定義206
8.2.1類和對象的關系206
8.2.2聲明類類型207
8.2.3定義對象的方法209
8.3類的成員函數210
8.3.1成員函數的性質210
8.3.2在類外定義成員函數211
8.3.3內置成員函數212
8.3.4成員函數的存儲方式213
8.4怎樣訪問對象的成員215
8.4.1通過對象名和成員運算符訪問對象中的成員215
8.4.2通過指向對象的指針訪問對象中的成員216
8.4.3通過對象的引用來訪問對象中的成員216
8.5類的封裝性和信息隱蔽217
8.5.1公用接口與私有實現的分離217
8.5.2類聲明和成員函數定義的分離218
8.5.3面向對象程序設計中的幾個名詞220
8.6類和對象的簡單應用舉例220
習題228
第9章怎樣使用類和對象230
9.1對象的初始化230
9.1.1需要對類對象進行初始化230
9.1.2用構造函數實現數據成員的初始化231
9.1.3帶參數的構造函數233
9.1.4在構造函數中用參數初始化表對數據成員初始化235
9.1.5可以對構造函數進行重載236
9.1.6構造函數中可以使用默認參數238
9.1.7利用析構函數進行清理工作240
9.1.8調用構造函數和析構函數的順序242
9.2對象數組244
9.3對象指針246
9.3.1指向對象的指針246
9.3.2指向對象成員的指針247
9.3.3指向當前對象的this指針250
9.4共用數據的保護251
9.4.1定義常對象251
9.4.2定義常對象成員253
9.4.3指向對象的常指針254
9.4.4指向常對象的指針變量255
9.4.5對象的常引用258
9.4.6const型數據的小結259
9.5對象的動態建立和釋放259
9.6對象的賦值和復制260
9.6.1對象的賦值260
9.6.2對象的復制262
9.7不同對象間的數據共享264
9.7.1把數據定義為靜態265
9.7.2用靜態成員函數訪問靜態數據成員267
9.8允許訪問私有數據的“朋友”——友元269
9.8.1可以訪問私有數據的友元函數270
9.8.2友元類273
9.9類模板274
習題278
第10章運算符重載282
10.1什么是運算符重載282
10.2對運算符重載的方法284
10.3重載運算符的規則287
10.4運算符重載函數作為類成員函數和友元函數288
10.5重載雙目運算符292
10.6重載單目運算符296
10.7重載流插入運算符“>”299
10.7.1重載流插入運算符“
10.7.2重載流提取運算符“>>”301
10.8有關運算符重載的歸納303
10.9不同類型數據間的轉換304
10.9.1標準類型數據間的轉換304
10.9.2用轉換構造函數將其他類型數據轉換為類對象305
10.9.3將類對象轉換為其他類型數據——類型轉換函數306
習題312
第4篇面向對象的程序設計
第11章類的繼承315
11.1繼承與派生的概念315
11.2派生類的聲明方式318
11.3派生類的構成318
11.4派生類成員的訪問屬性320
11.4.1公用繼承321
11.4.2私有繼承323
11.4.3保護成員和保護繼承326
11.4.4多級派生時的訪問屬性330
11.5派生類的構造函數和析構函數331
11.5.1簡單的派生類的構造函數331
11.5.2有子對象的派生類的構造函數335
11.5.3多層派生時的構造函數338
11.5.4派生類構造函數的特殊形式340
11.5.5派生類的析構函數340
11.6多重繼承341
11.6.1聲明多重繼承的方法341
11.6.2多重繼承派生類的構造函數341
11.6.3多重繼承引起的二義性問題344
11.6.4虛基類347
11.7基類與派生類的轉換352
11.8繼承與組合355
11.9繼承在軟件開發中的重要意義357
習題358
第12章C++的多態性363
12.1什么是多態性363
12.2一個典型的例子364
12.3利用虛函數實現動態多態性369
12.3.1虛函數的作用369
12.3.2靜態關聯與動態關聯373
12.3.3在什么情況下應當聲明虛函數375
12.3.4虛析構函數375
12.4純虛函數與抽象類377
12.4.1沒有函數體的純虛函數377
12.4.2不能用來定義對象的類——抽象類377
12.4.3應用實例378
習題384
第13章輸入輸出流385
13.1C++的輸入和輸出385
13.1.1輸入輸出的含義385
13.1.2C++的I/O對C的發展——類型安全和可擴展性385
13.1.3C++的輸入輸出流386
13.2標準輸出流391
13.2.1cout,cerr和clog流391
13.2.2標準類型數據的格式輸出393
13.2.3用流成員函數put輸出字符396
13.3標準輸入流398
13.3.1cin流398
13.3.2用流成員函數get輸入字符398
13.3.3istream類的其他成員函數400
13.4對數據文件的操作與文件流403
13.4.1文件的概念403
13.4.2文件流類與文件流對象404
13.4.3文件的打開與關閉405
13.4.4對ASCII文件的操作407
13.4.5對二進制文件的操作412
13.5字符串流418
習題422
第14章C++工具424
14.1對出現異常情況的處理424
14.1.1異常處理的任務424
14.1.2異常處理的方法425
14.1.3在函數聲明中進行異常情況指定432
14.1.4在異常處理中處理析構函數432
14.2用命名空間避免同名沖突434
14.2.1同名沖突435
14.2.2什么是命名空間438
14.2.3使用命名空間解決名字沖突439
14.2.4使用命名空間中成員的方法441
14.2.5無名的命名空間443
14.2.6標準命名空間std444
14.3使用早期的函數庫445
習題446
附錄A常用字符與ASCII碼對照表448
附錄B運算符和結合性449
參考文獻451
C++程序設計(第4版)(高等院校計算機基礎教育課程體系精選系列教材) 作者簡介
譚浩強,我國著名計算機教育專家,全國高等學校計算機基礎教育研究會名譽理事長。著有《C程序設計》等經典教材多部。
- >
姑媽的寶刀
- >
巴金-再思錄
- >
經典常談
- >
龍榆生:詞曲概論/大家小書
- >
莉莉和章魚
- >
回憶愛瑪儂
- >
李白與唐代文化
- >
詩經-先民的歌唱