-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

C++入門經典(第9版)

( 簡體 字)
作者:(美)Walter Savitch著 周靖譯,類別:1. -> 程式設計 -> C++ -> C++
譯者:
出版社:清華大學出版社C++入門經典(第9版) 3dWoo書號: 41879
詢問書籍請說出此書號!

缺書
NT售價: 640

出版日:6/10/2015
頁數:720
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302402978
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

  
  
  
  
前 言
  本書適合C++程序設計和計算機科學入門課程使用。閱讀本書不要求讀者有任何編程經驗,也不要求掌握除了中學代數之外的其他任何數學知識。
  本書前幾版的讀者請閱讀關于第9版修訂內容的小節,前言的其余內容可略過。新讀者請閱讀前言的全部內容以把握本書脈絡。
第9版修訂內容
  第9版采用和第8版相同的編程體例。保留第8版全部內容,但進行以下修訂。
* 章末的編程作業現在劃分為“編程練習”和“編程項目”。編程練習幫助鞏固本章的知識點,程序一般都很小,適合課堂練習。編程項目則要求綜合運用多方面的知識來解決問題,程序一般比編程練習大,適合作為家庭作業。
* 在C++98的背景下介紹C++11,涉及的主題包括新整型、auto類型、原始字符串字面值、強枚舉、nullptr、以范圍為基礎的for循環、字符串和整數相互轉換、成員初始化列表和委托構造函數等。
* 提供了關于排序、安全編程(即溢出和數組越界)以及繼承的補充材料。
* 勘誤。
* 新增21個編程練習和10個編程項目。
* 本書配套網站新增10個視頻講解,使總數達到64個。這些視頻講解輔導學生解題和寫程序,有助于鞏固對關鍵編程概念的掌握。如果書中某個主題有對應的視頻講解,就會出現一個特殊的圖標。
  用過第8版的教師可沿用以前的教案,幾乎不需要任何改動。
主題可以靈活排序
  本書允許教師自由安排教學順序。為了演示這一靈活性,下面推薦了兩種順序。采用任何順序都不會影響學習的連貫性。為了在改變順序時確保這種連貫性,可能需要移動個別小節而不是全章。但是,只有較大的、位置便利的小節才需要移動。為了幫助您根據需要自定義一個教學/閱讀順序,圖P.1展示了一幅依賴圖。另外,每章都有“預備知識”小節,解釋了學習那一章的每一節之前需掌握的內容。
  
重新排序1:提前學習類
  為了有效地設計類,學生需要掌握一些基本的工具,比如控制結構和函數定義。這些基礎知識在第1章∼第6章介紹。完成第6章的學習后,學生就可以開始寫自己的類了。如果想提前學習類的知識,可以像下面這樣重新安排各章的順序。
* 基礎知識 第1章、第2章、第3章、第4章、第5章和第6章。這6章全面介紹控制結構、函數定義和基本文件I/O。第3章介紹幾種額外的控制結構,如果希望盡早學習類,可以考慮推遲這一章的學習。
* 類和命名空間 第10章、第11章的11.1節和11.2節、第12章。這些章節全面介紹了如何定義類、友元、重載操作符和命名空間。
* 數組、字符串和向量 第7章和第8章。
* 指針和動態數組 第9章。
* 類類型的數組和數組作為類成員 第11章的11.3節和11.4節。
* 繼承 第15章。
* 遞歸 第14章(也可以推遲到更晚的時候學習)。
* 指針和鏈表 第13章。
  可能還要用到以下各章的部分內容。
* 異常處理 第16章。
* 模板 第17章。
* 標準模板庫 第18章。
  重新排序2:略微推遲類的學習
  在“重新排序2”中,將先學完所有控制結構,再學習數組的基本知識,之后才開始學習類。雖然對類的接觸要比“重新排序1”晚,但還是比本書的默認順序略微提前一些。
* 基礎知識 第1章、第2章、第3章、第4章、第5章和第6章。這6章全面介紹了控制結構、函數定義和基本文件I/O。
* 數組和字符串 第7章、第8章的8.1節和8.2節。
* 類和命名空間 第10章、第11章的11.1節、11.2節和第12章。這些章節全面介紹了如何定義類、友元、重載操作符和命名空間。
* 指針和動態數組 第9章。
* 類類型的數組和數組作為類成員 第11章的11.3節和11.4節。
* 繼承 第15章。
* 遞歸 第14章(也可以推遲到更晚的時候學習)。
* 向量 8.3節。
* 指針和鏈表 第13章。
  可能還要用到以下各章的部分內容。
* 異常處理 第16章。
* 模板 第17章。
* 標準模板庫 第18章。

依賴圖
  如下所示的依賴圖展示了各個章節可能的排序方式。連接兩個框的實線表明上部的框必須先于下部的框完成。只要符合這個條件,采用任何閱讀順序都無損連貫性。如果一個框中包含小節編號,表明該框只代表那些小節,不代表全章。

面向學生的易用性
  一本書必須按恰當的順序來講解恰當的主題,這是最起碼的要求。另外,在老師和其他有經驗的程序員看來,書的內容必須清晰而正確,這是另一個最起碼的要求。但是不是符合這兩項要求的書都是好書呢?答案是否定的。書中的內容必須采取有利于初學者使用的方式來編排。在這本入門教科書中,我盡力讓學生覺得清楚和友好。本書以前版本的大量學生反饋證明,這種寫作風格確實使內容更清晰,能使學生充分享受到學習的樂趣。

ANSI/ISO C++標準
  本書完全兼容符合最新ANSI/ISO C++標準的編譯器。寫作時的最新標準是C++ 11。
高級主題
  許多“高級主題”都已成為標準CS1課程的一部分。即使不是,以補充材料的形式提供也不錯。本書提供大量高級主題,它們既可集成到課程中,也可作為自學主題。本書全面講述了C++模板、繼承(包括虛函數)、異常處理和STL(Standard Template Library,標準模板庫)。雖然本書使用了庫,而且教給學生庫的重要性,但不要求任何非標準庫。本書只使用所有C++實現都有的庫。
小結框
  每個要點都用一個有底紋的方框來小結,它們散布于各章。
自測題
  每章都在重要位置提供大量自測題。答案在章末提供。
視頻講解
   視頻講解(Video Note)旨在講解關鍵編程概念和技術,演示了從設計到編碼來解決問題的過程。視頻講解使學生能方便地自學感興趣的主題,支持選擇、播放、倒退、快進和暫停。每當看到“ 視頻講解”,都表明當前主題有對應的視頻講解。注意,由于是英文視頻,所以為了方便索引,書中保留了這些視頻的英文名稱。
支持材料
  有一部分支持材料適用于本書所有讀者。其他僅適用于有資格的教師。
  適用于本書所有讀者的支持材料
* 源代碼
* PowerPoint幻燈片
* 視頻講解
  適用于有資格的教師的資源
* 教師資源指南(Instructor’s Resource Guide):包括每一章的教學要點、課堂測驗/答案和大量編程項目的參考答案。
* Test Bank和Test Generator:用于生成試卷。
* PowerPoint幻燈片:包括本書的程序和插圖。
* Lab Manual(實驗手冊)。

  
  
  
  
  
  
  

  
  
  

內容簡介:

本書是深受師生歡迎的優秀C++入門教材。作者結合自己多年的教學經驗精心設計并編撰了本書內容。采用了很多便于鞏固所學知識的設計,例如各章開頭的小節總覽,書中隨處可見的小結框、編程提示和編程陷阱,各章結尾的小結、習題、編程練習和編程項目等。這些非常適合初學者掌握重要的編程概念。
全書共18章,8個附錄。在講解C++基礎知識之后,直接引導學生深入函數、I/O流、類、控制流程、命名空間、數組、字符串、指針和動態數組、遞歸、模板、指針和鏈表、派生類、異常以及標準模板庫。
目錄:

第1章 計算機和C++編程入門 1
概述 2
1.1 計算機系統 2
硬件 2
軟件 5
高級語言 6
編譯器 7
1.2 編程和問題求解 9
算法 9
程序設計 10
面向對象編程 12
軟件生命周期 12
1.3 C++入門 13
C++語言的起源 13
一個C++示范程序 14
簡單C++程序的布局 17
編譯和運行C++程序 19
1.4 測試和調試 21
程序錯誤的分類 22
小結 24
自測題答案 24
編程練習 25
編程項目 26
第2章 C++基礎知識 29
概述 30
預備知識 30
2.1 變量和賦值 30
變量 30
名稱:標識符 32
變量聲明 33
賦值語句 34
2.2 輸入和輸出 37
使用cout進行輸出 37
include預編譯指令和命名空間 38
轉義序列 39
格式化帶小數點的數字 41
用cin進行輸入 42
設計輸入和輸出 43
2.3 數據類型和表達式 44
int類型和double類型 44
其他數值類型 45
C++11類型 46
char類型 47
bool類型 48
string類簡介 48
類型的兼容性 49
算術操作符和表達式 51
更多賦值語句 54
2.4 簡單控制流程 54
一個簡單的分支機制 54
復合語句 59
簡單的循環機制 61
遞增操作符和遞減操作符 63
2.5 程序風格 66
縮進 67
注釋 67
為常量命名 68
小結 71
自測題答案 71
編程練習 74
編程項目 76
第3章 更多的控制流程 79
概述 80
預備知識 80
3.1 使用布爾表達式 80
布爾表達式求值 80
枚舉類型(選讀) 85
3.2 多 路 分 支 86
嵌套語句 86
多路if-else語句 88
switch語句 92
為菜單使用switch語句 95
語句塊 96
3.3 C++循環語句詳解 99
while語句回顧 99
再論遞增操作符和遞減操作符 100
for語句 102
應該使用哪種循環 106
break語句 108
3.4 設計循環 109
求和與求乘積的循環 109
終止循環 111
嵌套循環 113
調試循環 114
小結 117
自測題答案 117
編程練習 121
編程項目 122
第4章 過程抽象和返回值的函數 125
概述 126
預備知識 126
4.1 自頂向下設計 126
4.2 預定義函數 126
使用預定義函數 127
隨機數生成 130
強制類型轉換 131
強制類型轉換的古老形式 133
4.3 程序員自定義函數 134
函數定義 134
返回布爾值的函數 138
另一種形式的函數聲明 138
函數定義語法小結 140
再論函數定義的位置 140
4.4 過程抽象 142
黑盒的比喻 142
4.5 作用域和局部變量 151
函數如同小程序 151
全局常量和全局變量 153
傳值形參是局部變量 155
塊作用域 156
再論命名空間 157
4.6 重載函數名稱 160
重載入門 160
自動類型轉換 164
小結 166
自測題答案 166
編程練習 169
編程項目 170
第5章 所有子任務的函數 173
概述 174
預備知識 174
5.1 void函數 174
void函數的定義 174
void函數中的return語句 177
5.2 傳引用參數 178
初探傳引用調用 179
傳引用調用詳解 180
混合的參數列表 185
5.3 使用過程抽象 188
在函數中調用其他函數 188
前條件和后條件 189
5.4 測試和調試函數 194
存根和驅動程序 194
5.5 常規調試技術 197
兼容并蓄,不抱偏見 198
檢查常見錯誤 198
定位錯誤 198
assert宏 200
小結 202
自測題答案 202
編程練習 205
編程項目 206
第6章 I/O流:對象和類入門 209
概述 210
預備知識 210
6.1 流和基本文件I/O 210
文件之于I/O的重要性 211
文件I/O 211
類與對象入門 214
文件I/O技術 218
追加到文件(選讀) 220
文件名作為輸入(選讀) 221
6.2 流I/O工具 224
用流函數格式化輸出 224
操縱元 227
流作為函數實參 228
命名空間的問題 231
6.3 字符I/O 233
成員函數get和put 233
putback成員函數(選讀) 236
函數的默認實參(選讀) 240
eof成員函數 243
預定義字符函數 246
小結 249
自測題答案 249
編程練習 254
編程項目 254
第7章 數組 259
概述 260
預備知識 260
7.1 數組入門 260
聲明和引用數組 260
數組在內存中的表示 263
初始化數組 265
7.2 函數中的數組 267
索引變量作為函數參數 267
整個數組作為函數參數 269
const參數修飾符 271
返回數組的函數 273
7.3 數組編程 282
部分填充數組 282
7.4 多維數組 292
多維數組基礎 292
多維數組參數 293
小結 298
自測題答案 298
編程練習 301
編程項目 302
第8章 字符串和向量 309
概述 310
預備知識 310
8.1 字符串的數組類型 310
C字符串值和C字符串變量 311
中的其他函數 315
C字符串輸入和輸出 318
C字符串到數值的轉換和可靠輸入 320
8.2 標準string類 324
標準類string簡介 324
string類的I/O 326
用string類進行字符串處理 330
string對象和C字符串之間的
轉換 335
字符串和數字之間的轉換 336
8.3 向量 336
向量基礎知識 336
效率問題 339
小結 341
自測題答案 341
編程練習 343
編程項目 343
第9章 指針和動態數組 349
概述 350
預備知識 350
9.1 指針 350
指針變量 351
基本內存管理 356
靜態變量和自動變量 356
9.2 動態數組 359
數組變量和指針變量 359
創建和使用動態數組 361
指針運算(選讀) 364
多維動態數組(選讀) 365
小結 367
自測題答案 367
編程練習 368
編程項目 368
第10章 定義類 373
概述 374
預備知識 374
10.1 結構 374
用于異種數據的結構 374
結構作為函數參數 378
對結構進行初始化 380
10.2 類 382
定義類和成員函數 382
公共成員和私有成員 386
總結類的一些特征 396
用于初始化的構造函數 397
10.3 抽象數據類型 405
用于生成抽象數據類型的類 405
10.4 繼承 411
派生類 412
定義派生類 413
小結 416
自測題答案 416
編程練習 420
編程項目 420
第11章 類中的友元函數、重載
操作符和數組 425
概述 426
預備知識 426
11.1 友元函數 426
友元函數 428
實現digit_to_int(選讀) 435
const參數修飾符 437
11.2 重載操作符 441
重載操作符 442
用于自動類型轉換的構造函數 444
重載一元操作符 445
重載>>和<< 446
11.3 數組和類 452
類數組 452
數組作為類成員 455
11.4 類和動態數組 458
析構函數 460
拷貝構造函數 463
重載賦值操作符 467
小結 470
自測題答案 470
編程練習 476
編程項目 477
第12章 獨立編譯和命名空間 483
概述 484
預備知識 484
12.1 獨立編譯 484
ADT回顧 484
使用#ifndef 492
12.2 命名空間 495
命名空間和using預編譯指令 495
創建命名空間 496
限定名稱 498
命名空間的微妙之處(選讀) 499
無名命名空間 500
小結 505
自測題答案 505
編程練習 506
編程項目 508
第13章 指針和鏈表 509
概述 510
預備知識 510
13.1 節點和鏈表 510
節點 511
nullptr 513
鏈表 514
在表頭插入節點 515
搜索鏈表 518
指針作為迭代器 520
在列表中插入和刪除節點 521
鏈表的變體 524
類構成的鏈表 526
13.2 棧和隊列 528
棧 528
隊列 532
小結 536
自測題答案 536
編程練習 538
編程項目 538
第14章 遞歸 545
概述 546
預備知識 546
14.1 面向任務的遞歸函數 546
深入遞歸 552
用于遞歸的棧 554
遞歸與迭代 555
14.2 面向值的遞歸函數 556
要返回值的遞歸函數的常規形式 556
14.3 遞歸思想 560
遞歸設計技術 560
小結 570
自測題答案 570
編程練習 573
編程項目 573
第15章 繼承 577
概述 578
預備知識 578
15.1 繼承基礎 578
派生類 580
派生類中的構造函數 585
protected限定符 588
重定義成員函數 590
重定義與重載的比較 592
訪問重定義的基函數 593
15.2 繼承細節 594
不繼承的函數 594
派生類中的賦值操作符和拷貝
構造函數 595
派生類中的析構函數 595
15.3 多態性 596
晚期綁定 597
C++虛函數 597
虛函數和擴展類型兼容性 601
小結 607
自測題答案 607
編程練習 610
編程項目 612
第16章 異常處理 617
概述 618
預備知識 618
16.1 異常處理基礎 618
異常處理的簡單例子 619
定義自己的異常類 625
多個throw塊和catch塊 626
在函數中拋出異常 629
異常規范 630
16.2 用于異常處理的編程技術 632
拋出異常的時機 632
異常類層次結構 634
測試可用內存 634
重新拋出異常 635
小結 636
自測題答案 636
編程練習 637
編程項目 638
第17章 模板 641
概述 642
預備知識 642
17.1 用于算法抽象的模板 642
函數模板 643
17.2 用于數據抽象的模板 651
類模板的語法 651
小結 657
自測題答案 657
編程練習 659
編程項目 659
第18章 標準模板庫 663
概述 664
預備知識 664
18.1 迭代器 664
using聲明 665
迭代器基礎 665
迭代器的種類 670
常量和可變迭代器 673
逆向迭代器 673
其他種類的迭代器 675
18.2 容器 675
順序容器 676
容器配接器stack和queue 679
關聯容器set和map 682
效率問題 687
18.3 泛型算法 688
運行時間和大O表示法 689
容器訪問運行時間 691
不修改容器的算法 692
會修改容器的算法 695
set算法 696
排序算法 697
小結 698
自測題答案 698
編程練習 699
編程項目 700
附錄1 C++關鍵字 705
附錄2 操作符的優先級 706
附錄3 ASCII字符集 707
附錄4 部分庫函數 708
附錄5 內聯函數 712
附錄6 重載數組索引方括號 713
附錄7 this指針 714
附錄8 將操作符重載為成員操作符 716
序: