強烈推薦visual c++ 2012入門經典適合初學者入門

強烈推薦visual c++ 2012入門經典適合初學者入門c++

此書按部就班,用其獨特、易於理解的教程風格來介紹各個主題,不管是編程新手,仍是經驗豐富的編程人員,都很容易理解。算法

此書的目錄基本覆蓋了Windows C++從入門到精通的方方面面。編程

 

《visual c++ 2012入門經典(第6版)》
第1章 使用visual c++編程 1
1.1 使用visual c++學習 1
1.2 編寫c++應用程序 2
1.3 學習桌面應用程序的編程 2
1.3.1 學習c++ 3
1.3.2 控制檯應用程序 3
1.3.3 windows編程概念 3
1.4 集成開發環境簡介 5
1.4.1 編輯器 5
1.4.2 編譯器 5
1.4.3 連接器 5
1.4.4 庫 6
1.5 使用ide 6
1.5.1 工具欄選項 7
1.5.2 可停靠的工具欄 8
1.5.3 文檔 8
1.5.4 項目和解決方案 8
1.5.5 設置visual c++的選項 16
1.5.6 建立和執行windows應用程序 17
windows

.1.6 小結 19 1.7 本章主要內容 19 第2章 數據、變量和計算 21 2.1 c++程序結構 21 2.1.1 main()函數 28 2.1.2 程序語句 28 2.1.3 空白 30 2.1.4 語句塊 30 2.1.5 自動生成的控制檯程序 31 2.2 定義變量 32 2.2.1 命名變量 32 2.2.2 聲明變量 33 2.2.3 變量的初始值 34 2.3 基本數據類型 34 2.3.1 整型變量 35 2.3.2 字符數據類型 36 2.3.3 整型修飾符 37 2.3.4 布爾類型 38 2.3.5 浮點類型 38 2.3.6 c++中的基本類型 39 2.3.7 字面值 39 2.3.8 定義數據類型的同義詞 40 2.4 基本的輸入/輸出操做 41 2.4.1 從鍵盤輸入 41 2.4.2 到命令行的輸出 41 2.4.3 格式化輸出 42 2.4.4 轉義序列 43 2.5 c++中的計算 45 2.5.1 賦值語句 45 2.5.2 算術運算 45 2.5.3 計算餘數 50 2.5.4 修改變量 50 2.5.5 增量和減量運算符 51 2.5.6 計算的順序 53 2.6 類型轉換和類型強制轉換 54 2.6.1 賦值語句中的類型轉換 55 2.6.2 顯式類型轉換 56 2.6.3 老式的類型強制轉換 57 2.7 auto關鍵字 57 2.8 類型的肯定 58 2.9 按位運算符 58 2.9.1 按位and運算符 58 2.9.2 按位or運算符 60 2.9.3 按位eor運算符 61 2.9.4 按位not運算符 61 2.9.5 移位運算符 61 2.10 lvalue和rvalue 63 2.11 瞭解存儲時間和做用域 64 2.11.1 自動變量 64 2.11.2 決定變量聲明的位置 66 2.11.3 全局變量 67 2.11.4 靜態變量 70 2.12 具備特定值集的變量 70 2.12.1 舊枚舉 70 2.12.2 類型安全的枚舉 72 2.13 名稱空間 74 2.13.1 聲明名稱空間 75 2.13.2 多個名稱空間 76 2.14 小結 77 2.15 練習 77 2.16 本章主要內容 78 第3章 判斷和循環 79 3.1 比較數據值 79 3.1.1 if語句 80 3.1.2 嵌套的if語句 81 3.1.3 嵌套的if-else語句 85 3.1.4 邏輯運算符和表達式 87 3.1.5 條件運算符 89 3.1.6 switch語句 91 3.1.7 無條件轉移 94 3.2 重複執行語句塊 95 3.2.1 循環的概念 95 3.2.2 for循環的變體 97 3.2.3 while循環 104 3.2.4 do-while循環 106 3.2.5 基於範圍的循環 107 3.2.6 嵌套的循環 107 3.3 小結 110 3.4 練習 110 3.5 本章主要內容 111 第4章 數組、字符串和指針 113 4.1 處理多個相同類型的數據值 113 4.1.1 數組 113 4.1.2 聲明數組 114 4.1.3 初始化數組 117 4.1.4 使用基於範圍的for循環 118 4.1.5 字符數組和字符串處理 119 4.1.6 多維數組 122 4.2 間接數據訪問 125 4.2.1 指針的概念 125 4.2.2 聲明指針 125 4.2.3 使用指針 126 4.2.4 初始化指針 127 4.2.5 sizeof操做符 132 4.2.6 常量指針和指向常量的指針 134 4.2.7 指針和數組 136 4.3 動態內存分配 142 4.3.1 堆的別名——空閒存儲器 142 4.3.2 new和delete操做符 142 4.3.3 爲數組動態分配內存 143 4.3.4 多維數組的動態分配 146 4.4 使用引用 146 4.4.1 引用的概念 147 4.4.2 聲明並初始化lvalue引用 147 4.4.3 在基於範圍的for循環中使用 引用 148 4.4.4 rvalue引用 148 4.5 字符串的庫函數 149 4.5.1 肯定以空字符結尾的字符串 的長度 149 4.5.2 鏈接以空字符結尾的字符串 150 4.5.3 複製以空字符結尾的字符串 151 4.5.4 比較以空字符結尾的字符串 152 4.5.5 搜索以空字符結尾的字符串 152 4.6 小結 154 4.7 練習 155 4.8 本章主要內容 155 第5章 程序結構(1) 157 5.1 理解函數 157 5.1.1 須要函數的緣由 158 5.1.2 函數的結構 158 5.1.3 替代的函數語法 161 5.1.4 使用函數 161 5.2 給函數傳遞實參 164 5.2.1 按值傳遞機制 165 5.2.2 給函數傳遞指針實參 166 5.2.3 給函數傳遞數組 167 5.2.4 給函數傳遞引用實參 171 5.2.5 使用const修飾符 173 5.2.6 rvalue引用形參 174 5.2.7 main()函數的實參 176 5.2.8 接受數量不定的函數實參 177 5.3 從函數返回值 179 5.3.1 返回指針 179 5.3.2 返回引用 182 5.3.3 函數中的靜態變量 184 5.4 遞歸函數調用 186 5.5 小結 189 5.6 練習 189 5.7 本章主要內容 189 第6章 程序結構(2) 191 6.1 函數指針 191 6.1.1 聲明函數指針 191 6.1.2 函數指針做爲實參 194 6.1.3 函數指針的數組 196 6.2 初始化函數形參 196 6.3 異常 198 6.3.1 拋出異常 199 6.3.2 捕獲異常 200 6.3.3 從新拋出異常 201 6.3.4 mfc中的異常處理 202 6.4 處理內存分配錯誤 203 6.5 函數重載 204 6.5.1 函數重載的概念 204 6.5.2 引用類型和重載選擇 207 6.5.3 什麼時候重載函數 207 6.6 函數模板 208 6.7 使用decltype操做符 210 6.8 使用函數的示例 212 6.8.1 實現計算器 212 6.8.2 從字符串中刪除空格 215 6.8.3 計算表達式的值 216 6.8.4 得到項值 218 6.8.5 分析數 219 6.8.6 整合程序 221 6.8.7 擴展程序 223 6.8.8 提取子字符串 224 6.8.9 運行修改過的程序 226 6.9 小結 227 6.10 練習 227 6.11 本章主要內容 228 第7章 自定義數據類型 229 7.1 c++中的結構 229 7.1.1 結構的概念 230 7.1.2 定義結構 230 7.1.3 初始化結構 230 7.1.4 訪問結構的成員 231 7.1.5 伴隨結構的智能感知幫助 234 7.1.6 rect結構 235 7.1.7 使用指針處理結構 236 7.2 數據類型、對象、類和實例 237 7.2.1 類的起源 239 7.2.2 類的操做 239 7.2.3 術語 240 7.3 理解類 240 7.3.1 定義類 240 7.3.2 聲明類的對象 241 7.3.3 訪問類的數據成員 241 7.3.4 類的成員函數 243 7.3.5 成員函數定義的位置 245 7.3.6 內聯函數 245 7.4 類構造函數 246 7.4.1 構造函數的概念 247 7.4.2 默認的構造函數 248 7.4.3 默認的形參值 250 7.4.4 在構造函數中使用初始化列表 252 7.4.5 聲明顯式的構造函數 253 7.5 類的私有成員 254 7.5.1 訪問私有類成員 256 7.5.2 類的友元函數 257 7.5.3 默認複製構造函數 259 7.6 this指針 260 7.7 類的const對象 263 7.7.1 類的const成員函數 263 7.7.2 類外部的成員函數定義 264 7.8 類對象的數組 265 7.9 類的靜態成員 267 7.9.1 類的靜態數據成員 267 7.9.2 類的靜態函數成員 270 7.10 類對象的指針和引用 270 7.10.1 類對象的指針 270 7.10.2 類對象的引用 273 7.11 小結 274 7.12 練習 274 7.13 本章主要內容 275 第8章 深刻理解類 277 8.1 類析構函數 277 8.1.1 析構函數的概念 277 8.1.2 默認的析構函數 278 8.1.3 析構函數與動態內存分配 280 8.2 實現複製構造函數 283 8.3 在變量之間共享內存 284 8.3.1 定義聯合 285 8.3.2 匿名聯合 286 8.3.3 類和結構中的聯合 286 8.4 運算符重載 287 8.4.1 實現重載的運算符 287 8.4.2 實現對比較運算符的徹底支持 290 8.4.3 重載賦值運算符 294 8.4.4 重載加法運算符 299 8.4.5 重載遞增和遞減運算符 303 8.4.6 重載函數調用操做符 304 8.5 對象複製問題 305 8.5.1 避免沒必要要的複製操做 305 8.5.2 應用rvalue引用形參 308 8.5.3 命名的對象是lvalue 310 8.6 默認的類成員 314 8.7 類模板 315 8.7.1 定義類模板 316 8.7.2 根據類模板建立對象 318 8.7.3 使用有多個形參的類模板 321 8.7.4 函數對象模板 323 8.8 完美轉發 324 8.9 使用類 327 8.9.1 類接口的概念 327 8.9.2 定義問題 327 8.9.3 實現cbox類 328 8.10 組織程序代碼 343 8.11 字符串的庫類 345 8.11.1 建立字符串對象 345 8.11.2 鏈接字符串 346 8.11.3 訪問與修改字符串 350 8.11.4 比較字符串 353 8.11.5 搜索字符串 356 8.12 小結 364 8.13 練習 364 8.14 本章主要內容 365 第9章 類繼承和虛函數 367 9.1 面向對象編程的基本思想 367 9.2 類的繼承 368 9.2.1 基類的概念 369 9.2.2 基類的派生類 369 9.3 繼承機制下的訪問控制 372 9.3.1 派生類中構造函數的操做 375 9.3.2 聲明類的保護成員 378 9.3.3 繼承類成員的訪問級別 380 9.4 派生類中的複製構造函數 382 9.5 禁止派生類 384 9.6 友元類成員 385 9.6.1 友元類 387 9.6.2 對類友元關係的限制 387 9.7 虛函數 387 9.7.1 虛函數的概念 389 9.7.2 確保虛函數的正確執行 391 9.7.3 禁止重寫函數 391 9.7.4 使用指向類對象的指針 392 9.7.5 使用引用處理虛函數 393 9.7.6 純虛函數 395 9.7.7 抽象類 395 9.7.8 間接基類 398 9.7.9 虛析構函數 400 9.8 類類型之間的強制轉換 403 9.9 嵌套類 403 9.10 小結 407 9.11 練習 407 9.12 本章主要內容 409 第10章 標準模板庫 411 10.1 標準模板庫的定義 411 10.1.1 容器 412 10.1.2 容器適配器 414 10.1.3 迭代器 414 10.2 智能指針 415 10.3 算法 418 10.4 stl中的函數對象 418 10.5 stl容器範圍 419 10.6 序列容器 419 10.6.1 建立矢量容器 420 10.6.2 矢量容器的容量和大小 423 10.6.3 訪問矢量中的元素 428 10.6.4 在矢量中插入和刪除元素 428 10.6.5 在矢量中存儲類對象 431 10.6.6 排序矢量元素 436 10.6.7 排序矢量中的指針 437 10.6.8 雙端隊列容器 442 10.6.9 使用列表容器 445 10.6.10 使用forward_list容器 454 10.6.11 使用其餘序列容器 456 10.6.12 tuple[ ]類模板 466 10.7 關聯容器 469 10.7.1 使用映射容器 469 10.7.2 使用多重映射容器 480 10.8 關於迭代器的更多內容 481 10.8.1 使用輸入流迭代器 481 10.8.2 使用插入迭代器 484 10.8.3 使用輸出流迭代器 485 10.9 關於函數對象的更多內容 487 10.10 關於算法的更多內容 488 10.10.1 fill() 489 10.10.2 replace() 489 10.10.3 find() 489 10.10.4 transform() 490 10.11 類型特質和靜態斷言 491 10.12 λ表達式 492 10.12.1 capture子句 493 10.12.2 捕獲特定的變量 494 10.12.3 模板和λ表達式 494 10.12.4 包裝λ表達式 498 10.13 小結 500 10.14 練習 500 10.15 本章主要內容 501 第11章 windows編程的概念 503 11.1 windows編程基礎 503 11.1.1 窗口的元素 504 11.1.2 windows程序與操做系統 505 11.1.3 事件驅動型程序 505 11.1.4 windows消息 506 11.1.5 windows api 506 11.1.6 windows數據類型 506 11.1.7 windows程序中的符號 507 11.2 windows程序的結構 508 11.2.1 winmain()函數 509 11.2.2 消息處理函數 519 11.3 mfc 524 11.3.1 mfc表示法 524 11.3.2 mfc程序的組織方式 525 11.4 小結 528 11.5 本章主要內容 528 第12章 使用mfc編寫windows程序 531 12.1 mfc的文檔/視圖概念 531 12.1.1 文檔的概念 531 12.1.2 文檔界面 532 12.1.3 視圖的概念 532 12.1.4 連接文檔和視圖 533 12.1.5 應用程序和mfc 534 12.2 建立mfc應用程序 535 12.2.1 建立sdi應用程序 536 12.2.2 mfc application wizard的輸出 539 12.2.3 建立mdi應用程序 548 12.3 小結 549 12.4 練習 550 12.5 本章主要內容0 550 第13章 處理菜單和工具欄 551 13.1 與windows進行通訊 551 13.1.1 瞭解消息映射 552 13.1.2 消息類別 554 13.1.3 處理程序中的消息 554 13.2 擴展sketcher程序 555 13.3 菜單的元素 556 13.4 爲菜單消息添加處理程序 559 13.4.1 選擇處理菜單消息的類 560 13.4.2 建立菜單消息函數 560 13.4.3 編寫菜單消息函數的代碼 562 13.4.4 添加更新菜單消息的處理 程序 565 13.5 添加工具欄按鈕 568 13.5.1 編輯工具欄按鈕的屬性 569 13.5.2 練習使用工具欄按鈕 570 13.5.3 添加工具提示 571 13.6 小結 571 13.7 練習 571 13.8 本章主要內容 571 第14章 在窗口中繪圖 573 14.1 窗口繪圖的基礎知識 573 14.1.1 窗口工做區 573 14.1.2 windows圖形設備界面 574 14.2 mfc的繪圖機制 576 14.2.1 應用程序中的視圖類 576 14.2.2 cdc類 577 14.3 實際繪製圖形 585 14.4 對鼠標進行編程 587 14.4.1 鼠標發出的消息 587 14.4.2 鼠標消息處理程序 588 14.4.3 使用鼠標繪圖 590 14.5 繪製草圖 611 14.5.1 運行示例 612 14.5.2 捕獲鼠標消息 612 14.6 小結 613 14.7 練習題 613 14.8 本章主要內容 614 第15章 改進視圖 615 15.1 sketcher應用程序的缺陷 615 15.2 改進視圖 616 15.2.1 更新多個視圖 616 15.2.2 滾動視圖 617 15.2.3 使用mm_loenglish 映射模式 622 15.3 刪除和移動元素 622 15.4 實現上下文菜單 623 15.4.1 關聯菜單和類 624 15.4.2 選中上下文菜單項 625 15.5 標識位於光標下的元素 626 15.5.1 練習彈出菜單 627 15.5.2 突出顯示元素 627 15.5.3 實現移動和刪除功能 631 15.6 處理屏蔽的元素 637 15.7 小結 639 15.8 練習 639 15.9 本章主要內容 639 第16章 使用對話框和控件 641 16.1 理解對話框 641 16.2 理解控件 642 16.3 建立對話框資源 642 16.3.1 給對話框添加控件 643 16.3.2 測試對話框 644 16.4 對話框的編程 644 16.4.1 添加對話框類 644 16.4.2 模態和非模態對話框 645 16.4.3 顯示對話框 646 16.5 支持對話框控件 648 16.5.1 初始化對話框控件 648 16.5.2 處理單選按鈕消息 649 16.6 完成對話框的操做 650 16.6.1 給文檔添加線寬 651 16.6.2 給元素添加線寬 651 16.6.3 在視圖中建立元素 653 16.6.4 練習使用對話框 654 16.7 使用微調按鈕控件 655 16.7.1 添加scale菜單項和工具欄 按鈕 655 16.7.2 建立微調按鈕 655 16.7.3 生成比例對話框類 656 16.7.4 顯示微調按鈕 659 16.8 使用縮放比例 660 16.8.1 可縮放的映射模式 660 16.8.2 設置文檔的大小 661 16.8.3 設置映射模式 662 16.8.4 同時實現滾動與縮放 663 16.9 使用狀態欄 665 16.9.1 給框架窗口添加狀態欄 665 16.9.2 cstring類 669 16.10 使用編輯框控件 669 16.10.1 建立編輯框資源 670 16.10.2 建立對話框類 671 16.10.3 添加text菜單項 672 16.10.4 定義文本元素 672 16.10.5 實現ctext類 673 16.11 小結 677 16.12 練習 678 16.13 本章主要內容 678 第17章 存儲和打印文檔 679 17.1 瞭解序列化 679 17.2 序列化文檔 680 17.2.1 文檔類定義中的序列化 680 17.2.2 文檔類實現中的序列化 681 17.2.3 基於cobject的類的功能 683 17.2.4 序列化的工做方式 684 17.2.5 如何實現類的序列化 685 17.3 應用序列化 685 17.3.1 記錄文檔修改 686 17.3.2 序列化文檔 687 17.3.3 序列化元素類 689 17.4 練習序列化 693 17.5 打印文檔 694 17.6 實現多頁打印 697 17.6.1 獲取文檔的總尺寸 698 17.6.2 存儲打印數據 698 17.6.3 準備打印 699 17.6.4 打印後的清除 700 17.6.5 準備設備上下文 701 17.6.6 打印文檔 701 17.6.7 得到文檔的打印輸出 705 17.7 小結 705 17.8 練習 705 17.9 本章主要內容 706 第18章 編寫windows 8應用程序 707 18.1 理解windows 8應用程序 707 18.2 開發windows 8應用程序 708 18.3 windows runtime的概念 709 18.3.1 winrt名稱空間 709 18.3.2 winrt對象 709 18.4 c++ component extensions (c++/cx) 710 18.4.1 c++/cx名稱空間 710 18.4.2 定義winrt類類型 711 18.4.3 ref類類型的變量 713 18.4.4 訪問ref類對象的成員 713 18.4.5 事件處理函數 714 18.4.6 轉換ref類引用的類型 714 18.5 xaml 714 18.5.1 xaml元素 715 18.5.2 xaml中的ui元素 716 18.5.3 附加屬性 719 18.5.4 父元素和子元素 719 18.5.5 控件元素 719 18.5.6 佈局元素 720 18.5.7 處理ui元素的事件 720 18.6 建立windows 8應用程序 721 18.6.1 應用程序文件 721 18.6.2 定義用戶界面 722 18.6.3 建立標題 724 18.6.4 添加遊戲控件 726 18.6.5 建立包含紙牌的網格 727 18.6.6 實現遊戲的操做 732 18.6.7 初始化mainpage對象 735 18.6.8 初始化一副紙牌 736 18.6.9 創建cardgrid的子元素 736 18.6.10 初始化遊戲 738 18.6.11 洗牌 740 18.6.12 突出顯示ui紙牌 741 18.6.13 處理翻牌事件 741 18.6.14 處理圖形事件 743 18.6.15 確認贏家 745 18.6.16 處理遊戲控件的按鈕事件 746 18.7 縮放ui元素 747 18.8 平移 749 18.8.1 應用程序的啓動動畫 749 18.8.2 故事板動畫 750 18.9 小結 752 18.10 本章主要內容 752
相關文章
相關標籤/搜索