C++程序設計教程-基于案例與實驗驅動 版權信息
- ISBN:9787111307945
- 條形碼:9787111307945 ; 978-7-111-30794-5
- 裝幀:暫無
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
C++程序設計教程-基于案例與實驗驅動 本書特色
《C++程序設計教程:基于案例與實驗驅動》依據ANSI C++標準,闡述面向對象的程序設計思想,詳細介紹了C++語言本身。書中結合大量實例講解面向對象程序設計的基本概念和方法,并增加了UML類圖的介紹以及STL程序設計的內容,同時配有多種形式的習題,并在附錄中提供了實驗指導書,供學生上機或測驗使用。《C++程序設計教程:基于案例與實驗驅動》的讀者對象是計算機、電子信息類專業的學生和相關的技術人員。《C++程序設計教程:基于案例與實驗驅動》特點·將統一建模語言UML融入到每部分學習內容中,講解例題前,用UML類圖對問題進行分析,使讀者掌握用面向對象方法來分析復雜問題,而不僅僅是學習面向對象語法。·選取大量貼近現實事物和現象的例題進行講解,使讀者對程序產生濃厚的興趣,增強學習動力。每章在講述知識點和例題后,通過一個完整的應用實例來鞏固所學知識點。·通過每章形式多樣的課后習題,讓讀者自己動手來編寫C++程序,徹底解決以往“看得懂、不會編”的情況。
C++程序設計教程-基于案例與實驗驅動 目錄
前言 教學建議 第1章 C++基礎知識 1 1.1 面向對象程序設計語言 1 1.1.1 從C到C++ 1 1.1.2 Java 1 1.2 面向對象程序設計的基本概念 2 1.2.1 類 3 1.2.2 對象 3 1.2.3 封裝 3 1.2.4 繼承 3 1.2.5 多態性 4 1.3 面向對象軟件的開發步驟 4 1.4 C++程序開發過程 5 1.5 UML類圖 6 1.6 一個簡單的C++程序 9 1.7 小結 12 習題 13 第2章 類與對象 15 2.1 類與對象的定義 15 .2.1.1 類的定義 15 2.1.2 成員函數的定義 17 2.1.3 類成員的訪問控制 18 2.1.4 對象的定義 19 2.1.5 對象的作用域和生存期 22 2.2 構造函數和析構函數 24 2.2.1 用于初始化的構造函數 24 2.2.2 默認構造函數 28 2.2.3 拷貝構造函數 29 2.2.4 析構函數 35 2.3 this指針 36 2.4 靜態成員 39 2.4.1 靜態數據成員 39 2.4.2 靜態成員函數 40 2.5 常成員 42 2.5.1 常對象 42 2.5.2 常數據成員 43 2.5.3 常成員函數 44 2.6 類的組合 45 2.7 友元函數和友元類 50 2.8 動態內存分配 52 2.8.1 new和delete 52 2.8.2 深拷貝與淺拷貝 54 2.9 應用實例-計數器 56 2.10 小結 61 習題 61 第3章 繼承與派生 64 3.1 基類和派生類 64 3.1.1 為何需要繼承 64 3.1.2 派生類聲明 66 3.2 派生類的訪問控制 68 3.2.1 公有繼承 68 3.2.2 私有繼承 70 3.2.3 保護繼承 71 3.3 派生類的構造函數和析構函數 72 3.3.1 派生類構造函數和析構函數的執行順序 73 3.3.2 派生類構造函數和析構函數的構造規則 74 3.4 多繼承 80 3.4.1 多繼承的聲明 80 3.4.2 多繼承的構造函數和析構函數 80 3.4.3 二義性 84 3.4.4 虛基類 85 3.5 賦值兼容規則 87 3.6 應用實例-小型診所的簡單信息管理程序 89 3.7 小結 93 習題 93 第4章 多態性 97 4.1 多態性概述 97 4.1.1 多態的分類 97 4.1.2 多態的實現 97 4.2 虛函數 97 4.2.1 靜態聯編和動態聯編 98 4.2.2 虛函數的作用和定義 98 4.2.3 虛函數的使用原則 99 4.2.4 虛函數的訪問 99 4.3 純虛函數與抽象類 100 4.4 函數重載 101 4.5 運算符重載 103 4.5.1 運算符重載的規則 104 4.5.2 運算符重載為成員函數 104 4.5.3 運算符重載為友元函數 105 4.5.4 其他運算符重載 106 4.6 應用實例 112 4.7 小結 115 習題 115 第5章 獨立編譯與命名空間 118 5.1 獨立編譯 118 5.1.1 C++程序的組織結構 118 5.1.2 編譯預處理 126 5.2 命名空間 130 5.2.1 命名空間和using預編譯指令 130 5.2.2 創建命名空間 131 5.2.3 無名命名空間 133 5.3 小結 137 習題 137 第6章 模板 139 6.1 模板的概念 139 6.2 函數模板 140 6.2.1 函數模板的定義 140 6.2.2 函數模板的實例化 141 6.3 類模板 144 6.3.1 類模板的定義 144 6.3.2 類模板的實例化 146 6.3.3 類模板的默認參數 147 6.4 標準模板庫STL 148 6.5 應用實例 150 6.6 小結 152 習題 152 第7章 輸入和輸出流類庫 154 7.1 輸入/輸出流概念和流類庫結構 154 7.2 無格式輸入/輸出 155 7.2.1 輸出運算符“[[” 155 7.2.2 輸入運算符“]]” 156 7.2.3 成員函數put()輸出字符 158 7.2.4 成員函數get()和getline() 158 7.2.5 成員函數read()和write() 160 7.3 格式化輸入/輸出 161 7.3.1 使用ios類成員函數 161 7.3.2 使用操縱符 166 7.4 文件流操作 168 7.4.1 文件打開與關閉 168 7.4.2 文件讀寫 170 7.5 應用實例 177 7.6 小結 180 習題 180 第8章 string類 182 8.1 string類對象定義 182 8.1.1 char型字符串 182 8.1.2 string型字符串定義 182 8.1.3 string類構造函數 183 8.2 string類成員函數 184 8.3 string類操作符 186 8.4 應用實例 191 8.5 小結 193 習題 193 第9章 異常處理 195 9.1 異常處理基礎 195 9.2 異常處理編程技術 196 9.2.1 異常處理的基本思想 196 9.2.2 異常處理的實現 197 9.2.3 異常處理規則 198 9.2.4 異常事件的多路捕獲 199 9.2.5 異常處理中的構造與析構 201 9.2.6 異常處理核心技術——棧展開 203 9.3 應用實例 203 9.4 小結 205 習題 205 附錄A 實驗指導 207 附錄B C++語言中的關鍵字 264 參考文獻 265
展開全部
C++程序設計教程-基于案例與實驗驅動 節選
作者結合多年的C++教學經驗,根據教學大綱精心設計并且編寫了書中內容。《C++程序設計教程:基于案例與實驗驅動》依據ANSI C++標準,闡述面向對象的程序設計思想,引出必要的語法知識,詳細介紹了C++語言本身。針對初學者的特點,書中結合大量實例講解面向對象程序設計的基本概念和方法,并增加了UML類圖的介紹以及STL程序設計的內容。全書分為9章,在講解了C++基礎知識之后,引導讀者深入學習類與對象、繼承與派生、多態性、獨立編譯與命名空間、模板、輸入輸出流、string類以及異常處理。《C++程序設計教程:基于案例與實驗驅動》文字流暢、概念清晰、通俗簡潔,并配有多種形式的習題,適合作為大專院校面向對象程序設計課程的入門教材。
C++程序設計教程-基于案例與實驗驅動 相關資料
插圖:類(class)是面向對象程序設計語言的基本概念,在C++中也是如此。在現實生活中,人們常常把眾多的事物歸納并劃分為若干類型,這是認識客觀世界常用的思維方法.比如,我們把載人數量為5-7人的、各種品牌的、使用汽油或柴油的、四個輪子的汽車統稱為小轎車,也就是說,從眾多的具體車輛中抽象出小轎車類。再比如,我們把一所高校所有在校的、男性或女性的、各個班級的、各個專業的本科生、研究生統稱為學生,可以從眾多的具體學生中抽象出學生類。對事物進行分類時,依據的原則是抽象,將注意力集中在與當前目標有關的本質特征上,而忽略事物的非本質特征,進而找出這些事物的所有共同點,把具有共同性質的事物劃分為一類,得到一個抽象的概念。日常生活中的汽車、房子、人、衣服等概念都是人們在長期的生產和生活實踐中抽象出來的概念。面向對象方法中的“類’,是具有相同屬性和服務的一組對象的集合。它為屬于該類的全部對象提供了抽象的描述,其內部包括屬性和行為兩個主要部分。1.2.2對象對象(0bJcct)是現實世界中一個實際存在的事物,它可以是看得見、摸得到的物體(如一本書),也可以是無形的(如一項計劃)。對象是構成現實世界的一個獨立單位,它具有自己的靜態特征(可以用某種數據來描述)和動態特征(對象所表現出來的行為或具有的功能)。比如,張三是現實世界中一個具體的人,他具有身高、體重(靜態特征),能夠思考和做運動(動態特征)。面向對象方法中的對象,是描述系統中某一客觀事物的一個實體,它是構成系統的一個基本單位。對象由一組屬性和一組行為構成。屬性是用來描述對象靜態特征的數據項,而行為是用來描述對象動態特征的操作序列。類與對象的關系,就像模具與產品之間的關系,一個屬于某類的對象稱為該類的一個實例,比如張三就是人這個類的一個實例,或者是這個類的具體表現。