Visual C++ 2013入門經典(第7版)

《Visual C++ 2013入門經典(第7版)》是2015年清華大學出版社出版的圖書,由 (美) 霍爾頓(Horton,I.) 著。

圖書詳細信息

ISBN:9787302385059

定價:99.8元

印次:1-1

裝幀:平裝

印刷日期:2014-12-2

圖書簡介

著名編程圖書作家Ivor Horton引導學習Visual C++ 2013這本最新的C++語言暢銷書遵循Ivor Horton一貫的暢銷風格。Horton非常詳盡地介紹了標準C++語言和Visual C++。

整本書都根據Visual C++ 2013進行了更新,展示了如何使用Visual C++建立實用的應用程式。閱讀本書不需要任何編程經驗。作者使用大量循序漸進的編程示例,引導讀者掌握C++開發的全部奧秘。

目錄

第1章使用VisualC++編程 1

1.1使用VisualC++學習 1

1.2編寫C++應用程式 2

1.3學習桌面應用程式的編程 2

1.3.1學習C++ 3

1.3.2C++概念 3

1.3.3控制台應用程式 4

1.3.4Windows編程概念 4

1.4集成開發環境簡介 6

1.4.1編輯器 6

1.4.2編譯器 6

1.4.3連結器 6

1.4.4庫 7

1.4.5標準C++庫 7

1.4.6Microsoft庫 7

1.5使用IDE 7

1.5.1工具列選項 8

1.5.2可停靠的工具列 9

1.5.3文檔 9

1.5.4項目和解決方案 9

1.5.5設定VisualC++的選項 16

1.5.6創建和執行Windows應用程式 17

1.6小結 19

1.7本章主要內容 19

第2章數據、變數和計算 21

2.1C++程式結構 21

2.1.1main()函式 28

2.1.2程式語句 28

2.1.3空白 30

2.1.4語句塊 30

2.1.5自動生成的控制台程式 30

2.2定義變數 32

2.2.1命名變數 32

2.2.2關鍵字 32

2.2.3聲明變數 33

2.2.4變數的初始值 33

2.3基本數據類型 34

2.3.1整型變數 34

2.3.2字元數據類型 35

2.3.3整型修飾符 36

2.3.4布爾類型 36

2.3.5浮點類型 37

2.3.6C++中的基本類型 37

2.3.7字面值 38

2.3.8定義類型的別名 39

2.4基本的輸入/輸出操作 40

2.4.1從鍵盤輸入 40

2.4.2到命令行的輸出 40

2.4.3格式化輸出 41

2.4.4轉義序列 42

2.5C++中的計算 44

2.5.1賦值語句 44

2.5.2算術運算 44

2.5.3計算餘數 49

2.5.4修改變數 49

2.5.5增量和減量運算符 50

2.5.6計算的順序 52

2.6類型轉換和類型強制轉換 53

2.6.1賦值語句中的類型轉換 54

2.6.2顯式類型轉換 54

2.6.3老式的類型強制轉換 55

2.7auto關鍵字 55

2.8類型的確定 56

2.9按位運算符 56

2.9.1按位AND運算符 57

2.9.2按位OR運算符 58

2.9.3按位XOR運算符 59

2.9.4按位NOT運算符 60

2.9.5移位運算符 60

2.10lvalue和rvalue 61

2.11了解存儲時間和作用域 62

2.11.1自動變數 62

2.11.2決定變數聲明的位置 65

2.11.3全局變數 65

2.11.4靜態變數 68

2.12具有特定值集的變數 68

2.12.1舊枚舉 68

2.12.2類型安全的枚舉 70

2.13名稱空間 72

2.13.1聲明名稱空間 73

2.13.2多個名稱空間 74

2.14小結 75

2.15練習 75

2.16本章主要內容 76

第3章判斷和循環 79

3.1比較數據值 79

3.1.1if語句 80

3.1.2嵌套的if語句 81

3.1.3嵌套的if-else語句 85

3.1.4邏輯運算符和表達式 87

3.1.5條件運算符 89

3.1.6switch語句 91

3.1.7無條件轉移 94

3.2重複執行語句塊 95

3.2.1循環的概念 95

3.2.2for循環的變體 98

3.2.3while循環 105

3.2.4do-while循環 107

3.2.5基於範圍的循環 108

3.2.6嵌套的循環 108

3.3小結 111

3.4練習 111

3.5本章主要內容 111

第4章數組、字元串和指針 113

4.1處理多個相同類型的數據值 113

4.1.1數組 114

4.1.2聲明數組 114

4.1.3初始化數組 117

4.1.4使用基於範圍的for循環 118

4.1.5多維數組 119

4.2處理C樣式的字元串 123

4.2.1字元串輸入 124

4.2.2字元串字面量 125

4.2.3給字元串使用基於範圍的

for循環 126

4.3間接數據訪問 128

4.3.1指針的概念 128

4.3.2聲明指針 128

4.3.3使用指針 129

4.3.4初始化指針 130

4.3.5指向char類型的指針 132

4.3.6sizeof操作符 136

4.3.7常量指針和指向常量的指針 136

4.3.8指針和數組 138

4.4動態記憶體分配 144

4.4.1堆的別名——空閒存儲器 144

4.4.2new和delete操作符 145

4.4.3為數組動態分配記憶體 146

4.4.4多維數組的動態分配 148

4.5使用引用 149

4.5.1引用的概念 149

4.5.2聲明並初始化lvalue引用 149

4.5.3在基於範圍的for循環中

使用引用 150

4.5.4創建rvalue引用 151

4.6字元串的庫函式 151

4.6.1確定以空字元結尾的字元串的長度 152

4.6.2連線以空字元結尾的字元串 152

4.6.3複製以空字元結尾的字元串 153

4.6.4比較以空字元結尾的字元串 154

4.6.5搜尋以空字元結尾的字元串 154

4.7小結 156

4.8練習 156

4.9本章主要內容 157

第5章程式結構(1) 159

5.1理解函式 159

5.1.1需要函式的原因 160

5.1.2函式的結構 161

5.1.3替代的函式語法 163

5.1.4使用函式 163

5.2給函式傳遞實參 166

5.2.1按值傳遞機制 167

5.2.2給函式傳遞指針實參 168

5.2.3給函式傳遞數組 169

5.2.4給函式傳遞引用實參 173

5.2.5使用const修飾符 175

5.2.6rvalue引用形參 176

5.2.7main()函式的實參 178

5.2.8接受數量不定的函式實參 179

5.3從函式返回值 181

5.3.1返回指針 181

5.3.2返回引用 184

5.3.3函式中的靜態變數 186

5.4遞歸函式調用 188

5.5小結 191

5.6練習 191

5.7本章主要內容 192

第6章程式結構(2) 193

6.1函式指針 193

6.1.1聲明函式指針 194

6.1.2函式指針作為實參 196

6.1.3函式指針的數組 198

6.2初始化函式形參 198

6.3異常 200

6.3.1拋出異常 202

6.3.2捕獲異常 202

6.3.3重新拋出異常 204

6.3.4MFC中的異常處理 204

6.4處理記憶體分配錯誤 205

6.5函式重載 206

6.5.1函式重載的概念 207

6.5.2引用類型和重載選擇 209

6.5.3何時重載函式 210

6.6函式模板 210

6.7使用decltype操作符 212

6.8使用函式的示例 215

6.8.1實現計算器 215

6.8.2從字元串中刪除空格 217

6.8.3計算表達式的值 218

6.8.4獲得項值 220

6.8.5分析數 221

6.8.6整合程式 224

6.8.7擴展程式 225

6.8.8提取子字元串 227

6.8.9運行修改過的程式 229

6.9小結 229

6.10練習 229

6.11本章主要內容 230

第7章自定義數據類型 233

7.1C++中的結構 233

7.1.1結構的概念 234

7.1.2定義結構 234

7.1.3初始化結構 234

7.1.4訪問結構的成員 235

7.1.5伴隨結構的智慧型感知幫助 238

7.1.6RECT結構 239

7.1.7使用指針處理結構 240

7.2數據類型、對象、類和實例 241

7.2.1類的起源 243

7.2.2類的操作 243

7.2.3術語 244

7.3理解類 244

7.3.1定義類 244

7.3.2聲明類的對象 245

7.3.3訪問類的數據成員 245

7.3.4對象成員的初始化 247

7.3.5初始化類成員 248

7.3.6類的成員函式 248

7.3.7在類的外部定義成員函式 250

7.3.8內聯函式 251

7.4類構造函式 252

7.4.1構造函式的概念 252

7.4.2默認的構造函式 254

7.4.3默認的形參值 256

7.4.4在構造函式中使用初始化

列表 258

7.4.5聲明顯式的構造函式 259

7.4.6委託構造函式 260

7.5類的私有成員 260

7.5.1訪問私有類成員 263

7.5.2類的友元函式 263

7.5.3默認複製構造函式 266

7.6this指針 267

7.7類的const對象 269

7.7.1類的const成員函式 270

7.7.2類外部的成員函式定義 271

7.8類對象的數組 271

7.9類的靜態成員 273

7.9.1類的靜態數據成員 273

7.9.2類的靜態函式成員 276

7.10類對象的指針和引用 277

7.10.1類對象的指針 277

7.10.2類對象的引用 279

7.11小結 280

7.12練習 280

7.13本章主要內容 281

第8章深入理解類 283

8.1類析構函式 283

8.1.1析構函式的概念 284

8.1.2默認的析構函式 284

8.1.3析構函式與動態記憶體分配 286

8.2實現複製構造函式 289

8.3運算符重載 291

8.3.1實現重載的運算符 291

8.3.2實現對比較運算符的

完全支持 294

8.3.3重載賦值運算符 298

8.3.4重載加法運算符 303

8.3.5重載遞增和遞減運算符 307

8.3.6重載函式調用操作符 308

8.4對象複製問題 309

8.4.1避免不必要的複製操作 309

8.4.2套用rvalue引用形參 312

8.4.3命名的對象是lvalue 314

8.5默認的類成員 319

8.6類模板 320

8.6.1定義類模板 320

8.6.2根據類模板創建對象 323

8.6.3有多個形參的類模板 326

8.6.4函式對象模板 328

8.7完美轉發 329

8.8模板形參的默認實參 332

8.8.1函式模板的默認實參 332

8.8.2類模板的默認實參 333

8.9類模板的別名 337

8.10模板特例 337

8.11使用類 341

8.11.1類接口的概念 341

8.11.2定義問題 341

8.11.3實現CBox類 341

8.12組織程式代碼 358

8.13字元串的庫類 359

8.13.1創建字元串對象 359

8.13.2連線字元串 361

8.13.3訪問與修改字元串 364

8.13.4比較字元串 367

8.13.5搜尋字元串 370

8.14小結 378

8.15練習 378

8.16本章主要內容 379

第9章類繼承和虛函式 381

9.1面向對象編程的基本思想 381

9.2類的繼承 382

9.2.1基類的概念 383

9.2.2基類的派生類 383

9.3繼承機制下的訪問控制 386

9.3.1派生類中構造函式的操作 389

9.3.2聲明類的保護成員 392

9.3.3繼承類成員的訪問級別 395

9.4派生類中的複製構造函式 396

9.5禁止派生類 399

9.6友元類成員 399

9.6.1友元類 401

9.6.2對類友元關係的限制 401

9.7虛函式 401

9.7.1虛函式的概念 403

9.7.2確保虛函式的正確執行 405

9.7.3禁止重寫函式 406

9.7.4使用指向類對象的指針 406

9.7.5使用引用處理虛函式 408

9.7.6純虛函式 408

9.7.7抽象類 409

9.7.8間接基類 411

9.7.9虛析構函式 413

9.8類類型之間的強制轉換 416

9.8.1定義轉換運算符 417

9.8.2顯式類型轉換運算符 417

9.9嵌套類 417

9.10小結 421

9.11練習 421

9.12本章主要內容 423

第10章標準模板庫 425

10.1標準模板庫的定義 425

10.1.1容器 426

10.1.2容器適配器 428

10.1.3疊代器 428

10.2智慧型指針 430

10.3算法 433

10.4STL中的函式對象 433

10.5STL容器範圍 434

10.6序列容器 434

10.6.1創建矢量容器 435

10.6.2矢量容器的容量和大小 438

10.6.3訪問矢量中的元素 442

10.6.4在矢量中插入和

刪除元素 443

10.6.5在矢量中存儲類對象 446

10.6.6矢量元素的排序 451

10.6.7存儲矢量中的指針 452

10.6.8雙端佇列容器 457

10.6.9使用列表容器 460

10.6.10使用forward_list容器 469

10.6.11使用其他序列容器 471

10.6.12tuple<>類模板 480

10.7關聯容器 483

10.7.1使用映射容器 483

10.7.2使用多重映射容器 494

10.8關於疊代器的更多內容 495

10.8.1使用輸入流疊代器 495

10.8.2使用插入疊代器 498

10.8.3使用輸出流疊代器 500

10.9關於函式對象的更多內容 502

10.10關於算法的更多內容 503

10.11類型特質和靜態斷言 505

10.12λ表達式 506

10.12.1capture子句 507

10.12.2捕獲特定的變數 508

10.12.3模板和λ表達式 508

10.12.4命名λ表達式 512

10.13小結 514

10.14練習 515

10.15本章主要內容 515

第11章Windows編程的概念 517

11.1Windows編程基礎 517

11.1.1視窗的元素 518

11.1.2Windows程式與

作業系統 519

11.1.3事件驅動型程式 519

11.1.4Windows訊息 520

11.1.5WindowsAPI 520

11.1.6Windows數據類型 521

11.1.7Windows程式中的符號 521

11.2Windows程式的結構 522

11.2.1WinMain()函式 523

11.2.2處理Windows訊息 533

11.3MFC 538

11.3.1MFC表示法 539

11.3.2MFC程式的組織方式 539

11.4小結 543

11.5本章主要內容 543

第12章使用MFC編寫Windows程式 545

12.1MFC的文檔/視圖概念 545

12.1.1文檔的概念 545

12.1.2文檔界面 546

12.1.3視圖的概念 546

12.1.4連結文檔和視圖 547

12.1.5應用程式和MFC 548

12.2創建MFC應用程式 549

12.2.1創建SDI應用程式 550

12.2.2MFCApplicationWizard

的輸出 554

12.2.3創建MDI應用程式 563

12.3小結 565

12.4練習 565

12.5本章主要內容 565

第13章處理選單和工具列 567

13.1與Windows通信 567

13.1.1了解訊息映射 568

13.1.2訊息類別 570

13.1.3處理程式中的訊息 570

13.2擴展Sketcher程式 571

13.3選單的元素 572

13.4為選單訊息添加處理程式 575

13.4.1選擇處理選單訊息的類 576

13.4.2創建選單訊息函式 576

13.4.3編寫選單訊息函式的

代碼 578

13.4.4添加更新選單訊息的

處理程式 581

13.5添加工具列按鈕 584

13.5.1編輯工具列按鈕的屬性 585

13.5.2練習使用工具列按鈕 586

13.5.3添加工具提示 586

13.6小結 587

13.7練習 587

13.8本章主要內容 587

第14章在視窗中繪圖 589

14.1視窗繪圖的基礎知識 589

14.1.1視窗客戶區 589

14.1.2Windows圖形設備界面 590

14.2MFC的繪圖機制 592

14.2.1應用程式中的視圖類 592

14.2.2CDC類 593

14.3實際繪製圖形 601

14.4對滑鼠進行編程 603

14.4.1滑鼠發出的訊息 603

14.4.2滑鼠訊息處理程式 604

14.4.3使用滑鼠繪圖 606

14.5繪製草圖 627

14.5.1運行示例 628

14.5.2捕獲滑鼠訊息 629

14.6小結 630

14.7練習題 630

14.8本章主要內容 631

第15章改進視圖 633

15.1Sketcher應用程式的缺陷 633

15.2改進視圖 634

15.2.1更新多個視圖 634

15.2.2滾動視圖 635

15.2.3使用MM_LOENGLISH

映射模式 640

15.3刪除和移動元素 640

15.4實現上下文選單 641

15.4.1關聯選單和類 642

15.4.2選中上下文選單項 643

15.5標識位於游標下的元素 644

15.5.1練習彈出選單 645

15.5.2突出顯示元素 645

15.5.3實現移動和刪除功能 649

15.6處理禁止的元素 655

15.7小結 657

15.8練習 657

15.9本章主要內容 657

第16章使用對話框和控制項 659

16.1理解對話框 659

16.2理解控制項 660

16.3創建對話框資源 660

16.3.1給對話框添加控制項 661

16.3.2測試對話框 662

16.4對話框的編程 662

16.4.1添加對話框類 662

16.4.2模態和非模態對話框 664

16.4.3顯示對話框 664

16.5支持對話框控制項 666

16.5.1初始化對話框控制項 667

16.5.2處理單選按鈕訊息 668

16.6完成對話框的操作 668

16.6.1給文檔添加線寬 669

16.6.2給元素添加線寬 669

16.6.3在視圖中創建元素 671

16.6.4練習使用對話框 672

16.7使用微調按鈕控制項 673

16.7.1添加Scale選單項和

工具列按鈕 673

16.7.2創建微調按鈕 673

16.7.3生成比例對話框類 674

16.7.4顯示微調按鈕 677

16.8使用縮放比例 678

16.8.1可縮放的映射模式 678

16.8.2設定文檔的大小 679

16.8.3設定映射模式 680

16.8.4同時實現滾動與縮放 681

16.9使用狀態欄 683

16.9.1給框架視窗添加狀態欄 683

16.9.2CString類 687

16.10使用編輯框控制項 688

16.10.1創建編輯框資源 688

16.10.2創建對話框類 689

16.10.3添加Text選單項 690

16.10.4定義文本元素 691

16.10.5實現CText類 691

16.11小結 696

16.12練習 696

16.13本章主要內容 696

第17章存儲和列印文檔 697

17.1了解序列化 697

17.2序列化文檔 698

17.2.1文檔類定義中的序列化 698

17.2.2文檔類實現中的序列化 699

17.2.3基於CObject的類的

功能 701

17.2.4序列化的工作方式 702

17.2.5如何實現類的序列化 703

17.3套用序列化 704

17.3.1記錄文檔修改 704

17.3.2序列化文檔 706

17.3.3序列化元素類 707

17.4練習序列化 711

17.5列印文檔 713

17.6實現多頁列印 716

17.6.1獲取文檔的總尺寸 716

17.6.2存儲列印數據 717

17.6.3準備列印 718

17.6.4列印後的清除 719

17.6.5準備設備上下文 719

17.6.6列印文檔 720

17.6.7獲得文檔的列印輸出 724

17.7小結 724

17.8練習 724

17.9本章主要內容 725

第18章編寫Windows8應用程式 727

18.1WindowsStore應用程式 727

18.2開發WindowsStore應用程式 728

18.3WindowsRuntime的概念 729

18.3.1WinRT名稱空間 729

18.3.2WinRT對象 730

18.4C++/CX 730

18.4.1C++/CX名稱空間 730

18.4.2定義WinRT類類型 731

18.4.3ref類類型的變數 733

18.4.4訪問ref類對象的成員 734

18.4.5事件處理程式 734

18.4.6轉換ref類引用的類型 735

18.5XAML 735

18.5.1XAML元素 735

18.5.2XAML中的UI元素 737

18.5.3附加屬性 739

18.5.4父元素和子元素 740

18.5.5控制項元素 740

18.5.6布局元素 740

18.5.7處理UI元素的事件 741

18.6創建WindowsStore應用程式 742

18.6.1應用程式檔案 742

18.6.2定義用戶界面 742

18.6.3創建標題 745

18.6.4添加遊戲控制項 746

18.6.5創建包含紙牌的格線 748

18.6.6實現遊戲的操作 752

18.6.7初始化MainPage對象 755

18.6.8初始化一副紙牌 756

18.6.9建立cardGrid的子元素 757

18.6.10初始化遊戲 758

18.6.11洗牌 760

18.6.12突出顯示UI紙牌 761

18.6.13處理翻牌事件 762

18.6.14處理圖形事件 764

18.6.15確認贏家 765

18.6.16處理遊戲控制項的按鈕事件 766

18.7縮放UI元素 768

18.8平移 770

18.8.1應用程式的啟動動畫 770

18.8.2故事板動畫 771

18.9小結 773

18.10本章主要內容 773

相關詞條

熱門詞條

聯絡我們