面向對象程序設計教程——C++

王曉帆,李薇

  • 出版商: 電子工業
  • 出版日期: 2020-07-01
  • 定價: $299
  • 售價: 8.5$254
  • 語言: 簡體中文
  • 頁數: 272
  • ISBN: 7121392585
  • ISBN-13: 9787121392580
  • 相關分類: C++ 程式語言

立即出貨 (庫存=1)

買這商品的人也買了...

相關主題

商品描述

本書針對已有C程序設計基礎、學習C++面向對象程序設計的讀者。本書分為12章,第1章介紹面向對象程序設計的思想和基本概念;第2章綜述C++的發展歷程及新特性;第3~6章介紹類、對象、函數、常量、重載的概念及使用方法;第7、8章詳細講解類的組合、繼承、多態及模板問題;第9~11章詳細介紹輸入流/輸出流、異常處理及Visual C++ 2019開發環境;第12章給出一個Visual Studio環境下的C++綜合實例。本書內容由淺入深,採用案例教學的方法,力求將復雜的概念用簡潔淺顯的語言進行講解,並且用實例對方法進行說明。書中還配有大量的習題。本書配有電子課件等教學資源,請登錄華信教育資源網www.hxedu.com.cn,註冊後免費下載。本書還配有慕課,請登錄智慧樹網站www.zhihuishu.com,搜索“面向對象程序設計”或掃描前言中的課程二維碼。

目錄大綱

目 錄 第1章 面向對象方法學 1 1.1 面向對象方法學的發展 1 1.2 面向對象方法學的概述 2 1.2.1 面向對象分析 2 1.2.2 面向對象設計 3 1.2.3 面向對象實現 3 1.3 面向對象程序設計的特性 3 1.3.1 抽象 4 1.3.2 封裝 4 1.3.3 繼承 5 1.3.4 多態 5 1.4 面向對象程序設計的術語 6 1.5 面向對象程序設計語言 7 1.5.1 C++ 7 1.5.2 Java 8 1.5.3 C# 9 1.5.4 Python 10 小結 11 習題1 11 第2章 C++概述 12 2.1 C++發展歷程與特點 12 2.2 C++程序 13 2.2.1 C++程序的格式與構成 13 2.2.2 C++程序的編譯與執行 15 2.3 從C到C++ 16 2.4 C++的一些新特性 18 2.4.1 註釋 18 2.4.2 新的數據類型 19 2.4.3 靈活的變量說明 19 2.4.4 作用域運算符 19 2.4.5 命名空間 20 2.4.6 新的輸入/輸出 21 2.4.7 頭文件 23 2.4.8 引用 24 2.5 Visual C++ 2019開發環境簡介 28 小結 30 習題2 30 第3章 類與對象 32 3.1 類的定義 32 3.1.1 類定義格式 32 3.1.2 成員函數的定義 34 3.1.3 類的作用域 34 3.2 對象的定義與使用 35 3.2.1 對象的定義 35 3.2.2 對象的使用 36 3.2.3 對象的賦值 38 3.2.4 對象的生命周期 39 3.3 構造函數和析構函數 42 3.3.1 構造函數 42 3.3.2 析構函數 44 3.4 內存的動態分配 47 3.4.1 運算符new 47 3.4.2 運算符delete 48 3.5 對象數組和對象指針 49 3.5.1 對象數組 49 3.5.2 對象指針 51 3.5.3 自引用指針this 52 小結 54 習題3 54 第4章 函數 56 4.1 函數參數的傳遞機制 56 4.1.1 使用對象作為函數參數 56 4.1.2 使用對象指針作為函數參數 57 4.1.3 使用對象引用作為函數參數 58 4.1.4 三種傳遞方式比較 59 4.2 內聯函數 59 4.3 函數重載 60 4.3.1 非成員函數重載 60 4.3.2 成員函數重載 62 4.4 函數的默認參數值 63 4.5 友元 65 4.5.1 友元函數 65 4.2.2 友元類 69 4.6 靜態成員 70 4.6.1 靜態數據成員 71 4.6.2 靜態成員函數 73 4.6.3 靜態對象 76 4.7 應用實例 77 小結 83 習題4 84 第5章 常量 88 5.1 const的最初動機 88 5.1.1 由define引發的問題 88 5.1.2 const的使用方法 88 5.2 const與指針 89 5.2.1 指向常量的指針 90 5.2.2 常指針 90 5.3 const與引用 91 5.4 const與函數 91 5.4.1 const類型的參數 91 5.4.2 const類型的返回值 92 5.4.3 const在傳遞地址中的應用 93 5.5 const與類 94 5.5.1 類內const局部常量 94 5.5.2 常對象與常成員函數 95 5.6 拷貝構造函數 97 小結 101 習題5 102 第6章 運算符重載 103 6.1 運算符重載的基本概念 103 6.2 成員函數重載運算符 103 6.2.1 重載單目運算符 104 6.2.2 重載雙目運算符 105 6.2.3 重載++、--運算符 107 6.2.4 重載賦值運算符 110 6.2.5 重載下標運算符 113 6.2.6 重載函數調用運算符 115 6.3 友元函數重載運算符 115 6.4 成員函數與友元函數重載運算符的 比較 119 6.5 類型轉換 121 6.5.1 系統預定義類型之間的 轉換 121 6.5.2 用構造函數實現類型轉換 121 6.5.3 用運算符轉換函數實現類型 轉換 124 小結 127 習題6 128 第7章 組合、繼承與多態 130 7.1 組合 130 7.2 繼承 131 7.3 繼承與組合 133 7.4 繼承與組合中的構造和析構 136 7.4.1 成員對象初始化 136 7.4.2 構造和析構順序 136 7.5 名字覆蓋 140 7.6 虛函數 141 7.6.1 靜態綁定與動態綁定 142 7.6.2 虛函數的定義 142 7.6.3 虛析構函數 144 7.7 純虛函數和抽象基類 144 7.8 多重繼承 146 7.8.1 多繼承語法 147 7.8.2 虛基類 148 7.8.3 最終派生類 149 7.8.4 多繼承的構造順序 150 小結 152 習題7 152 第8章 模板 156 8.1 模板的概念 156 8.2 函數模板與模板函數 156 8.3 類模板與模板類 160 8.4 應用實例 164 小結 171 習題8 171 第9章 輸入流/輸出流 173 9.1 C++流類庫簡介 173 9.2 輸入流/輸出流格式 174 9.2.1 基本輸出流 174 9.2.2 基本輸入流 176 9.2.3 格式化輸入/輸出 177 9.2.4 其他輸入/輸出函數 183 9.3 用戶自定義類型的輸入/輸出 185 9.3.1 重載輸出運算符 185 9.3.2 重載輸入運算符 186 9.4 文件輸入/輸出 188 9.4.1 順序訪問文件 188 9.4.2 隨機訪問文件 192 9.5 應用實例 193 小結 198 習題9 198 第10章 異常處理 201 10.1 異常處理概述 201 10.2 拋出異常 201 10.3 異常捕獲 202 10.3.1 異常處理語法 202 10.3.2 異常接口聲明 204 10.3.3 捕獲所有異常 204 10.3.4 未捕獲異常的處理 204 10.4 構造函數、析構函數與異常處理 205 10.5 異常匹配 207 10.6 標準異常及層次結構 208 小結 208 習題10 208 第11章 Visual C++ 2019開發環境 209 11.1 Visual C++ 2019概述 209 11.1.1 Visual Studio 2019 209 11.1.2 Visual C++ 2019 210 11.2 Visual C++ 2019環境 210 11.2.1 Visual C++ 2019操作界面 210 11.2.2 項目 212 11.2.3 調試環境 213 11.3 Windows編程 214 11.3.1 Windows常用數據類型 215 11.3.2 消息與事件 215 11.3.3 窗口消息示例 217 11.4 MFC類庫 219 11.5 MFC編程實例 222 小結 225 習題11 225 第12章 綜合實例 226 12.1 系統分析與設計 226 12.1.1 系統功能分析 226 12.1.2 系統功能類模型 226 12.1.3 系統功能流程 227 12.2 設計實現 228 12.2.1 系統程序框架生成 228 12.2.2 建立圖元類 230 12.2.3 界面控制 233 12.2.4 繪制圖元——線段 235 12.2.5 繪制圖元——矩形 240 12.2.6 繪制圖元——橢圓 243 12.2.7 繪制圖元——文字 246 12.2.8 繪制圖元——折線/多邊形 248 12.2.9 圖元文件存取 251 小結 260 習題12 260 參考文獻 261