注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計C/C++及其相關(guān)C++入門經(jīng)典

C++入門經(jīng)典

C++入門經(jīng)典

定 價:¥98.00

作 者: (美)霍頓(Horton, I.)著;李予敏譯
出版社: 清華大學(xué)出版社
叢編項:
標 簽: C語言 程序設(shè)計

ISBN: 9787302120629 出版時間: 2006-01-01 包裝: 膠版紙
開本: 26cm 頁數(shù): 786 字數(shù):  

內(nèi)容簡介

C++在幾乎所有的計算環(huán)境中都非常普及,而且可以用于幾乎所有的應(yīng)用程序。C++從C中繼承了過程化編程的高效性,并集成了面向?qū)ο缶幊痰墓δ?。C++在其標準庫中提供了大量的功能。有許多商業(yè)C++庫支持數(shù)量眾多的操作系統(tǒng)環(huán)境和專業(yè)應(yīng)用程序。但因為它的內(nèi)容太多了,所以掌握C++并不十分容易。本書詳述了C++語言的各個方面,包括數(shù)據(jù)類型、程序控制、函數(shù)、指針、調(diào)試、類、重載、繼承、多態(tài)性、模板、異常和輸入輸出等內(nèi)容。每一章都以前述內(nèi)容為基礎(chǔ),每個關(guān)鍵點都用具體的示例進行詳細的講解。本書基本不需要讀者具備任何C++知識,書中包含了理解C++的所有必要知識,讀者可以從頭開始編寫自己的C++程序。本書也適合于具備另一種語言編程經(jīng)驗但希望全面掌握C++語言的讀者。C++是一個內(nèi)涵豐富、功能強大的語言,這就是許多專業(yè)人士選擇它的原因。初學(xué)者常常發(fā)現(xiàn)C++比其他語言難懂,這也許是因為它的功能和適用范圍比較復(fù)雜。但是,C++并不比其他語言難學(xué),只是內(nèi)容比其他語言多一些而已。本書的宗旨是盡可能使C++容易理解和掌握,讀者不需要有任何編程知識或經(jīng)驗,基本上,只要對編程有所了解,即可從本書中學(xué)到有關(guān)編程的所有知識。在本書中,每個C++語言特性都用具體的例子來說明,通過每章最后的練習(xí)還可以測試自己對所學(xué)知識的掌握情況。讀者還可以通過例子學(xué)習(xí)和理解C++的更高級特性,這些例子不僅展示了這些特性的工作方式,還說明了它們采用這種方式的原因。每一章都建立在前面章節(jié)內(nèi)容的基礎(chǔ)之上,讀者可以循序漸進地提高C++編程技巧和使用C++語言的信心。盡管C++學(xué)起來不是很難,但也不簡單。對于初學(xué)者,必須認真閱讀本書超過800頁的內(nèi)容!只要端正學(xué)習(xí)編程的態(tài)度,付出一定的努力,讀者一定能利用本書成為一位有競爭力的C++程序員。要學(xué)習(xí)的內(nèi)容很多,但得到的樂趣也很多。讀者一定能體會到掌握一門目前功能最強大的編程語言的成就感。

作者簡介

  IvorHorton是世界著名的計算機圖書作家,主要從事與編程相關(guān)的顧問及撰寫工作,曾幫助無數(shù)程序員步入編程的殿堂。他曾在IBM工作多年,能使用多種語言進行編程(在多種機器上使用匯編語言和高級語言),設(shè)計和實現(xiàn)了實時閉環(huán)工業(yè)控制系統(tǒng)。Horton擁有豐富的教學(xué)經(jīng)驗(教學(xué)內(nèi)容包括C、C++、FORTRAN、PL/1、APL等),同時還是機械、加工和電子CAD系統(tǒng)、機械CAM系統(tǒng)和DNC/CNC系統(tǒng)方面的專家。IvorHorton還著有BeginningVisualC++6、BeginningCProgramming和BeginningJava2等多部入門級好書。李予敏,男,計算機科學(xué)及應(yīng)用專業(yè)博士,某研究院高級研究員,擁有豐富的C、C++編程經(jīng)驗,在核心期刊、國際國內(nèi)會議上發(fā)表多篇文章,擁有著作3本、譯著2本。

圖書目錄

第1章  基本概念    1
1.1  編程語言    1
1.1.1  編程語言簡史    1
1.1.2  解釋性程序和編譯性程序的
執(zhí)行過程    2
1.1.3  庫    3
1.2  C++是一種強大的語言    3
1.3  一個簡單的C++程序    4
1.3.1  名稱    6
1.3.2  命名空間    7
1.4  關(guān)鍵字    9
1.5  C++語句和語句塊    9
1.6  程序結(jié)構(gòu)    10
1.7  從源文件中創(chuàng)建可執(zhí)行文件    12
1.7.1  編譯    12
1.7.2  鏈接    13
1.8  C++源字符    14
1.8.1  通用字符集    15
1.8.2  三字符序列    15
1.8.3  轉(zhuǎn)義序列    16
1.8.4  語句中的空白    18
1.9  程序的注釋    19
1.10  標準庫    20
1.11  用C++編程    21
1.12  本章小結(jié)    22
1.13  練習(xí)    23
第2章  基本數(shù)據(jù)類型和計算    24
2.1  數(shù)據(jù)和數(shù)據(jù)類型    24
2.2  進行簡單的計算    24
2.2.1  字面量    25
2.2.2  整型字面量    25
2.2.3  整數(shù)的算術(shù)運算    27
2.2.4  運算符的優(yōu)先級和相關(guān)性    30
2.3  使用變量    32
2.4  整型變量    33
2.4.1  整型變量類型    35
2.4.2  整數(shù)的取值范圍    37
2.4.3  整型字面量的類型    38
2.5  賦值運算符    39
2.5.1  多次賦值    40
2.5.2  修改變量的值    40
2.6  整數(shù)的遞增和遞減    42
2.7  const關(guān)鍵字    44
2.8  整數(shù)的數(shù)字函數(shù)    45
2.9  浮點數(shù)    49
2.9.1  浮點數(shù)的數(shù)據(jù)類型    49
2.9.2  浮點數(shù)的操作    51
2.9.3  使用浮點數(shù)值    53
2.9.4  數(shù)值函數(shù)    55
2.10  使用字符    57
2.10.1  字符字面量    57
2.10.2  初始化char變量    58
2.10.3  使用擴展字符集    60
2.11  初始值的函數(shù)表示法    62
2.12  本章小結(jié)    62
2.13  練習(xí)    63
第3章  處理基本數(shù)據(jù)類型    64
3.1  混合的表達式    64
3.1.1  賦值和不同的類型    65
3.1.2  顯式強制轉(zhuǎn)換    66
3.1.3  老式的強制轉(zhuǎn)換    68
3.2  確定類型    70
3.3  按位運算符    73
3.3.1  移位運算符    74
3.3.2  位模式下的邏輯運算    76
3.4  枚舉數(shù)據(jù)類型    85
3.4.1  匿名枚舉    86
3.4.2  在整型和枚舉類型之間
強制轉(zhuǎn)換    87
3.5  數(shù)據(jù)類型的同義詞    89
3.6  變量的生存期    90
3.6.1  自動變量    90
3.6.2  定位變量的聲明    92
3.6.3  全局變量    92
3.6.4  靜態(tài)變量    95
3.7  特殊的類型修飾符    96
3.8  聲明外部變量    96
3.9  優(yōu)先級和相關(guān)性    96
3.10  本章小結(jié)    97
3.11  練習(xí)    98
第4章  選擇和決策    99
4.1  比較數(shù)據(jù)值    99
4.1.1  應(yīng)用比較運算符    100
4.1.2  比較浮點數(shù)值    102
4.2  if語句    102
4.3  if-else語句    110
4.4  邏輯運算符    114
4.4.1  邏輯與運算符    115
4.4.2  邏輯或運算符    115
4.4.3  邏輯非運算符    115
4.5  條件運算符    118
4.6  switch語句    120
4.7  無條件分支    124
4.8  決策語句塊和變量作用域    125
4.9  本章小結(jié)    126
4.10  練習(xí)    126
第5章  循環(huán)    127
5.1  理解循環(huán)    127
5.2  while循環(huán)    128
5.3  do-while循環(huán)    130
5.4  for循環(huán)    133
5.4.1  循環(huán)和變量作用域    135
5.4.2  用浮點數(shù)值控制for循環(huán)    137
5.4.3  使用更復(fù)雜的循環(huán)控制表達式    140
5.5  嵌套的循環(huán)    143
5.6  跳過循環(huán)迭代    147
5.7  循環(huán)的中斷    150
5.8  本章小結(jié)    155
5.9  練習(xí)    155
第6章  數(shù)組和字符串    156
6.1  數(shù)據(jù)數(shù)組    156
6.1.1  使用數(shù)組    156
6.1.2  初始化數(shù)組    161
6.1.3  字符數(shù)組    164
6.2  多維數(shù)組    168
6.2.1  初始化多維數(shù)組    170
6.2.2  多維字符數(shù)組    172
6.3  string類型    174
6.3.1  聲明string對象    175
6.3.2  使用string對象    177
6.3.3  訪問字符串中的字符    179
6.3.4  訪問子字符串    182
6.3.5  比較字符串    182
6.3.6  搜索字符串    188
6.3.7  修改字符串    196
6.4  string類型的數(shù)組    201
6.5  寬字符的字符串    202
6.6  本章小結(jié)    202
6.7  練習(xí)    203
第7章  指針    204
7.1  什么是指針    204
7.2  指針的聲明    205
7.3  指針的初始化    210
7.4  常量指針和指向常量的指針    220
7.5  指針和數(shù)組    221
7.5.1  指針的算術(shù)運算    221
7.5.2  使用數(shù)組名的指針表示法    224
7.5.3  對多維數(shù)組使用指針    227
7.5.4  C樣式字符串的操作    229
7.6  動態(tài)內(nèi)存分配    231
7.6.1  自由存儲區(qū)    232
7.6.2  運算符new和delete    232
7.6.3  數(shù)組的動態(tài)內(nèi)存分配    233
7.6.4  動態(tài)內(nèi)存分配的危險    235
7.6.5  轉(zhuǎn)換指針    241
7.7  本章小結(jié)    241
7.8  練習(xí)    242
第8章  使用函數(shù)編程    243
8.1  程序的分解    243
8.2  理解函數(shù)    245
8.2.1  定義函數(shù)    245
8.2.2  函數(shù)的聲明    249
8.3  給函數(shù)傳送參數(shù)    251
8.3.1  按值傳送機制    251
8.3.2  按引用傳送機制    260
8.3.3  main()的參數(shù)    264
8.4  默認的參數(shù)值    265
8.5  從函數(shù)中返回值    268
8.5.1  返回一個指針    268
8.5.2  返回一個引用    272
8.5.3  從函數(shù)中返回新變量    273
8.6  內(nèi)聯(lián)函數(shù)    273
8.7  靜態(tài)變量    273
8.8  本章小結(jié)    276
8.9  練習(xí)    276
第9章  函數(shù)    278
9.1  函數(shù)的重載    278
9.1.1  函數(shù)的簽名    278
9.1.2  重載和指針參數(shù)    281
9.1.3  重載和引用參數(shù)    281
9.1.4  重載和const參數(shù)    283
9.1.5  重載和默認參數(shù)值    284
9.2  函數(shù)模板    285
9.2.1  創(chuàng)建函數(shù)模板的實例    286
9.2.2  顯式指定模板參數(shù)    288
9.2.3  模板的說明    289
9.2.4  函數(shù)模板和重載    291
9.2.5  帶有多個參數(shù)的模板    292
9.3  函數(shù)指針    293
9.3.1  聲明函數(shù)指針    294
9.3.2  把函數(shù)作為參數(shù)傳送    297
9.3.3  函數(shù)指針的數(shù)組    299
9.4  遞歸    299
9.5  本章小結(jié)    307
9.6  練習(xí)    307
第10章  程序文件和預(yù)處理器指令    309
10.1  使用程序文件    309
10.1.1  名稱的作用域    310
10.1.2  “一個定義”規(guī)則    312
10.1.3  程序文件和鏈接    313
10.1.4  外部名稱    314
10.2  命名空間    318
10.2.1  全局命名空間    319
10.2.2  定義命名空間    319
10.2.3  使用using聲明    322
10.2.4  函數(shù)和命名空間    322
10.2.5  函數(shù)模板和命名空間    326
10.2.6  擴展命名空間    327
10.2.7  未指定名稱的命名空間    330
10.2.8  命名空間的別名    331
10.2.9  嵌套的命名空間    331
10.3  預(yù)處理器    332
10.3.1  在程序中包含頭文件    333
10.3.2  程序中的置換    334
10.3.3  宏置換    336
10.3.4  放在多行代碼中的預(yù)
處理器指令    338
10.3.5  把字符串作為宏參數(shù)    339
10.3.6  在宏表達式中連接參數(shù)    340
10.4  邏輯預(yù)處理器指令    340
10.4.1  邏輯#if指令    341
10.4.2  測試特定值的指令    343
10.4.3  多個代碼選擇塊    343
10.4.4  標準的預(yù)處理器宏    344
10.4.5  #error和#pragma指令    345
10.5  調(diào)試方法    346
10.5.1  集成調(diào)試器    346
10.5.2  調(diào)試中的預(yù)處理器指令    347
10.5.3  使用assert宏    353
10.6  本章小結(jié)    354
10.7  練習(xí)    355
第11章  創(chuàng)建自己的數(shù)據(jù)類型    356
11.1  對象的概念    356
11.2  C++中的結(jié)構(gòu)    357
11.2.1  理解結(jié)構(gòu)    357
11.2.2  定義結(jié)構(gòu)類型    358
11.2.3  創(chuàng)建結(jié)構(gòu)類型的對象    360
11.2.4  訪問結(jié)構(gòu)對象的成員    360
11.2.5  對結(jié)構(gòu)使用指針    366
11.3  聯(lián)合    370
11.3.1  聲明聯(lián)合    371
11.3.2  匿名聯(lián)合    372
11.4  更復(fù)雜的結(jié)構(gòu)    373
11.5  本章小結(jié)    379
11.6  練習(xí)    380
第12章  類    381
12.1  類和面向?qū)ο缶幊?nbsp;   381
12.1.1  封裝    382
12.1.2  繼承    383
12.1.3  多態(tài)性    384
12.1.4  術(shù)語    385
12.2  定義類    385
12.3  構(gòu)造函數(shù)    388
12.3.1  把構(gòu)造函數(shù)的定義放在
類的外部    390
12.3.2  默認的構(gòu)造函數(shù)    392
12.3.3  默認的初始化值    395
12.3.4  在構(gòu)造函數(shù)中使用初始化
列表    396
12.3.5  使用explicit關(guān)鍵字    397
12.4  類的私有成員    398
12.4.1  訪問私有類成員    402
12.4.2  默認的副本構(gòu)造函數(shù)    404
12.5  友元    405
12.5.1  類的友元函數(shù)    405
12.5.2  友元類    408
12.6  this指針    409
12.7  const對象和const成員函數(shù)    413
12.7.1  類中的mutable數(shù)據(jù)成員    415
12.7.2  常量的強制轉(zhuǎn)換    416
12.8  類的對象數(shù)組    416
12.9  類對象的大小    419
12.10  類的靜態(tài)成員    421
12.10.1  類的靜態(tài)數(shù)據(jù)成員    421
12.10.2  類的靜態(tài)成員函數(shù)    426
12.11  本章小結(jié)    427
12.12  練習(xí)    428
第13章  類的操作    429
13.1  類對象的指針和引用    429
13.2  指針作為數(shù)據(jù)成員    430
13.2.1  定義Package類    431
13.2.2  定義TruckLoad類    434
13.2.3  實現(xiàn)TruckLoad類    435
13.3  控制對類的訪問    443
13.4  副本構(gòu)造函數(shù)的重要性    445
13.5  對象內(nèi)部的動態(tài)內(nèi)存分配    453
13.5.1  析構(gòu)函數(shù)    453
13.5.2  定義析構(gòu)函數(shù)    453
13.5.3  默認的析構(gòu)函數(shù)    454
13.5.4  實現(xiàn)析構(gòu)函數(shù)    456
13.6  類的引用    457
13.7  本章小結(jié)    459
13.8  練習(xí)    460
第14章  運算符重載    461
14.1  為自己的類實現(xiàn)運算符    461
14.1.1  運算符重載    461
14.1.2  可以重載的運算符    462
14.1.3  實現(xiàn)重載運算符    462
14.1.4  全局運算符函數(shù)    466
14.1.5  提供對運算符的全部支持    466
14.1.6  運算符函數(shù)術(shù)語    470
14.1.7  重載賦值運算符    470
14.1.8  重載算術(shù)運算符    477
14.1.9  重載下標運算符    482
14.1.10  重載類型轉(zhuǎn)換    489
14.1.11  重載遞增和遞減運算符    490
14.1.12  智能指針    491
14.1.13  重載運算符new和delete    497
14.2  本章小結(jié)    497
14.3  練習(xí)    498
第15章  繼承    499
15.1  類和面向?qū)ο缶幊?nbsp;   499
15.2  類的繼承    500
15.2.1  繼承和聚合    501
15.2.2  從基類中派生新類    502
15.3  繼承下的訪問控制    505
15.4  把類的成員聲明為protected    508
15.5  派生類成員的訪問級別    510
15.5.1  在類層次結(jié)構(gòu)中使用
訪問指定符    511
15.5.2  改變繼承成員的訪問
指定符    512
15.6  派生類中的構(gòu)造函數(shù)操作    514
15.7  繼承中的析構(gòu)函數(shù)    520
15.8  重復(fù)的成員名    522
15.9  多重繼承    524
15.9.1  多個基類    524
15.9.2  繼承成員的模糊性    526
15.9.3  重復(fù)的繼承    531
15.9.4  虛基類    532
15.10  在相關(guān)的類類型之間轉(zhuǎn)換    533
15.11  本章小結(jié)    534
15.12  練習(xí)    534
第16章  虛函數(shù)和多態(tài)性    536
16.1  理解多態(tài)性    536
16.1.1  使用基類指針    536
16.1.2  調(diào)用繼承的函數(shù)    538
16.1.3  虛函數(shù)    542
16.1.4  虛函數(shù)中的默認參數(shù)值    549
16.1.5  通過引用來調(diào)用虛函數(shù)    553
16.1.6  調(diào)用虛函數(shù)的基類版本    554
16.1.7  在指針和類對象之間轉(zhuǎn)換    555
16.1.8  動態(tài)強制轉(zhuǎn)換    557
16.2  多態(tài)性的成本    559
16.3  純虛函數(shù)    560
16.3.1  抽象類    560
16.3.2  間接的抽象基類    563
16.4  通過指針釋放對象    566
16.5  在運行期間標識類型    569
16.6  類成員的指針    570
16.6.1  數(shù)據(jù)成員指針    570
16.6.2  成員函數(shù)指針    574
16.7  本章小結(jié)    578
16.8  練習(xí)    578
第17章  程序錯誤和異常處理    580
17.1  處理錯誤    580
17.2  理解異常    581
17.2.1  拋出異常    581
17.2.2  導(dǎo)致拋出異常的代碼    586
17.2.3  嵌套的try塊    588
17.3  用類對象作為異常    591
17.3.1  匹配Catch處理程序
和異常    592
17.3.2  用基類處理程序捕獲
派生類異常    596
17.3.3  重新拋出異常    598
17.3.4  捕獲所有的異常    601
17.4  拋出異常的函數(shù)    603
17.4.1  函數(shù)try塊    603
17.4.2  在構(gòu)造函數(shù)中拋出異常    605
17.4.3  異常和析構(gòu)函數(shù)    606
17.5  標準庫異常    606
17.5.1  標準庫異常類    607
17.5.2  使用標準異常    608
17.6  本章小結(jié)    609
17.7  練習(xí)    610
第18章  類模板    611
18.1  理解類模板    611
18.2  定義類模板    612
18.2.1  模板參數(shù)    613
18.2.2  簡單的類模板    613
18.2.3  創(chuàng)建類模板的實例    617
18.2.4  類模板的靜態(tài)成員    625
18.2.5  非類型的類模板參數(shù)    625
18.2.6  非類型參數(shù)示例    626
18.2.7  默認的模板參數(shù)值    636
18.3  模板的顯式實例化    636
18.4  類模板的友元    637
18.5  特殊情形    638
18.6  帶有嵌套類的類模板    640
18.7  更高級的類模板    648
18.8  本章小結(jié)    649
18.9  練習(xí)    649
第19章  輸入輸出操作    651
19.1  C++中的輸入輸出    651
19.1.1  理解流    651
19.1.2  使用流的優(yōu)點    652
19.2  流類    653
19.2.1  標準流    654
19.2.2  流的插入和提取操作    655
19.2.3  流操縱程序    657
19.3  文件流    659
19.3.1  寫入文件    659
19.3.2  讀取文件    662
19.3.3  設(shè)置文件打開模式    664
19.4  未格式化的流操作    672
19.4.1  未格式化的流輸入函數(shù)    673
19.4.2  未格式化的流輸出函數(shù)    674
19.5  流輸入輸出中的錯誤    675
19.6  使用二進制模式流操作    677
19.7  對流的讀寫操作    685
19.8  字符串流    692
19.9  對象和流    693
19.9.1  重載類對象的插入運算符    693
19.9.2  重載類對象的提取運算符    696
19.9.3  流中更復(fù)雜的對象    698
19.10  本章小結(jié)    710
19.11  練習(xí)    710
第20章  標準模板庫    711
20.1  STL架構(gòu)簡介    711
20.1.1  STL組件    711
20.1.2  STL頭文件    716
20.2  使用vector容器    717
20.2.1  創(chuàng)建vector容器    717
20.2.2  訪問vector容器中的元素    720
20.2.3  vector容器的基本操作    722
20.2.4  使用vector容器進行數(shù)組
操作    726
20.2.5  使用輸入流迭代器    730
20.3  創(chuàng)建自己的迭代器    734
20.3.1  給算法傳送迭代器    736
20.3.2  STL迭代器類型的要求    738
20.3.3  STL迭代器成員函數(shù)的
要求    740
20.3.4  插入迭代器    744
20.4  list容器    745
20.4.1  創(chuàng)建list容器    746
20.4.2  訪問list容器中的元素    747
20.4.3  list容器上的操作    747
20.5  關(guān)聯(lián)map容器    753
20.6  性能和規(guī)范    761
20.7  本章小結(jié)    763
20.8  練習(xí)    763
附錄A  ASCII碼    764
附錄B  C++關(guān)鍵字    768
附錄C  標準庫頭文件    769
附錄D  運算符的優(yōu)先級和相關(guān)性    774
附錄E  理解二進制和十六進制數(shù)    777
附錄F  項目示例    783

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號