C++程式設計藝術(第五版)(附工具軟體光碟片)

C++程式設計藝術(第五版)(附工具軟體光碟片)

作者:蔡鴻旭、林子超、吳其政、吳家榮, 出版社:培生, 出版日期:2006-12-22

定價 850 元, 最低 765 元起... 建宏書局 完整列出比價資訊...

商品條碼:9789861544670, ISBN:9861544674
分類標籤:中文書 » 電腦 » 教育 » 高等教育 » 程式語言

 

內容簡介

C++程式設計藝術(第五版)(附工具軟體光碟片)
本書譯自H. M. Deitel & P. J. Deitel原著「C++:How to Program (Fifth Edition)」,本書和它提供的教材,賦予授課者和學生所需的資訊性、趣味性、挑戰性和娛樂性的C++學習經驗。


■ 本書特色

1 . 內容清晰精確,新的版面設計更增進了本書的易讀性。
2 . 符合最新的ANSI/ISO C++標準文件規範,力求完整性與正確性。
3 . 新增多個案例研討。每個案例均有承先啟後的功能。
4 . 介紹標準樣板函式庫(STL)及探討其三個主要元件。
5 . 介紹網頁程式設計的必備知識,讀者可將這些知識應用於網頁應用程式的開發上。



■ 目錄

第1章 電腦、網際網路與全球資訊網簡介
1.1 簡介
1.2 何謂電腦?
1.3 電腦的架構
1.4 早期的電腦作業系統
1.5 個人式、分散式及用戶端/伺服器的計算環境
1.6 網際網路與全球資訊網
1.7 機器語言、組合語言和高階語言
1.8 C/C++的沿革
1.9 C++標準函式庫 (C++ standard library)
1.10 典型的C++開發環境
1.11 C++和C++ How to Program第五版注意事項
1.12 實際體驗C++應用程式
1.13 軟體工程案例研討:物件技術與統一塑模語言 (UML)介紹(必讀)
1.14 資源網站
第2章 C++程式設計簡介
2.1 簡介
2.2 第一個C++程式:列印一行文字
2.3 修改第一個C++程式
2.4 另一個C++程式:整數加法
2.5 記憶體觀念
2.6 算術計算
2.7 判斷:等號運算子和關係運算子
2.8 探討ATM需求文件
第3章 類別與物件簡介
3.1 簡介
3.2 類別、物件、成員函式與資料成員
3.3 本章範例概覽
3.4 定義一個含有成員函式的類別
3.5 定義一個具有參數的成員函式
3.6 資料成員、set函式與get函式
3.7 以建構子將物件初始化
3.8 將類別放在獨立檔案以提高重複使用性
3.9 將介面與實作分開
3.10 以set函式驗證資料
3.11 (選讀) 軟體工程案例研討:找出ATM需求文件中的類別
第4章 控制敘述:第一部分
4.1 簡介
4.2 演算法
4.3 虛擬碼
4.4 控制結構
4.5 if選擇敘述
4.6 if…else雙重選擇敘述
4.7 while重複敘述
4.8 規劃演算法:計數控制重複
4.9 規劃演算法:警示控制重複
4.10 規劃演算法:巢狀控制敘述
4.11 賦值運算子
4.12 遞增和遞減運算子
4.13 (選讀) 軟體工程案例研討:找出ATM系統中的類別屬性
第5章 控制敘述:第二部份
5.1 簡介
5.2 計數控制重複的基本原理
5.3 for重複敘述
5.4 使用for敘述的範例
5.5 do…while重複敘述
5.6 switch多重選擇敘述
5.7 break和continue敘述
5.8 邏輯運算子
5.9 等號運算子 (==) 和賦值運算子 (=) 的混淆
5.10 結構化程式設計摘要
5.11 (選讀) 軟體工程案例研討:找出ATM系統中的物件狀態與活動
第6章 函式與遞迴
6.1 簡介
6.2 C++程式元件
6.3 數學函式庫函式
6.4 定義多參數函式
6.5 函式原型及引數強制轉換
6.6 C++ 標準函式庫標頭檔
6.7 案例研究:亂數產生器
6.8 案例研究:機率遊戲與enum
6.9 儲存類別
6.10 使用域解析原則
6.11 函式呼叫堆疊與活動記錄
6.12 無參數函式
6.13 行內函式
6.14 參照與參照參數
6.15 預設引數
6.16 單元使用域解析運算子
6.17 函式多載
6.18 函式樣板
6.19 遞迴
6.20 遞迴範例:Fibonacci數列 (Fibonacci Series)
6.21 遞迴與循環
6.22 (選讀) 軟體工程實例研究:判定ATM系統中的類別操作
第7章 陣列與vector
7.1 簡介
7.2 陣列
7.3 宣告陣列
7.4 陣列使用範例
7.5 把陣列傳給函式
7.6 案例研究:類別GradeBook—用陣列儲存成績
7.7 用線性搜尋法搜尋陣列
7.8 用插入排序法為陣列排序
7.9 多維陣列
7.10 案例研究:使用二維陣列的類別GradeBook
7.11 C++標準函式庫類別樣板vector簡介
7.12 (選讀) 軟體工程實例研究:ATM系統中的物件合作關係
第8章 指標與指標字串
8.1 簡介
8.2 宣告及初始化指標變數
8.3 指標運算子
8.4 透過指標以傳址呼叫將引數傳入函式
8.5 使用const指標
8.6 使用傳址呼叫的選擇排序法
8.7 sizeof 運算子
8.8 指標運算式及指標算術
8.9 指標和陣列間的關係
8.10 指標陣列
8.11 案例研究:模擬牌與發牌
8.12 函式指標
8.13 指標字串處理簡介
8.13.1 字元與指標字串基礎
8.13.2 字串處理函式庫的字串操作函式
第9章 類別:深入討論(上)
9.1 簡介502
9.2 案例研究:類別Time
9.3 類別使用域及存取類別的成員
9.4 區分介面與實作
9.5 存取函式與工具函式
9.6 類別Time案例研究:建構子與預設引數
9.7 解構子
9.8 建構子與解構子的呼叫時機
9.9 類別Time案例研究:小心陷阱;傳回private資料成員的參照
9.10 預設逐成員賦值
9.11 軟體再利用性
9.12 (選讀) 軟體工程實例研究:開始撰寫ATM系統類別程式
第10章 類別:深入討論(下)
10.1 簡介
10.2 const物件和const成員函式
10.3 組合:將物件當作類別成員
10.4 夥伴函式與類別
10.5 使用this指標
10.6 透過new和delete運算子動態配置記憶體
10.7 static類別成員
10.8 資料抽象化與資訊隱藏
10.8.1 範例陣列抽象資料型別
10.8.2 範例字串抽象資料型別
10.8.3 範例佇列抽象資料型別
10.9 容器類別與循環器
10.10 代理類別
第11章 運算子多載;字串和陣列物件
11.1 簡介
11.2 運算子多載的基本原理
11.3 運算子多載的限制
11.4 運算子函式作為類別成員與全域函式的對照
11.5 對串流插入和串流擷取運算子的多載
11.6 多載一元運算子
11.7 多載二元運算子
11.8 案例研究:Array類別
11.9 不同型別之間的轉換
11.10 案例研究:String類別
11.11 多載++和--
11.12 案例研究:日期類別
11.13 標準函式庫的string類別
11.14 explicit建構子
第12章 物件導向程式設計:繼承
12.1 簡介
12.2 基本類別與衍生類別
12.3 protected成員
12.4 基本類別和衍生類別之間的關係
12.4.1 建立並使用CommissionEmployee類別
12.4.2 不使用繼承機制建立BasePlusCommissionEmployee類別
12.4.3 建立CommissionEmployee-
BasePlusCommissionEmployee繼承階層
12.4.4 使用protected資料的CommissionEmployee-BasePlusCommissionEmployee繼承階層
12.4.5 使用private資料的CommissionEmployee-BasePlusCommissionEmployee繼承階層
12.5 衍生類別的建構子與解構子
12.6 public、protected 和 private 繼承
12.7 使用繼承的軟體工程
第13章 物件導向程式設計:多型
13.1 簡介
13.2 多型的範例
13.3 繼承階層中的物件關係
13.3.1 從衍生類別物件呼叫基本類別的函式
13.3.2 以衍生類別的指標指向基本類別的物件
13.3.3 透過基本類別指標來呼叫衍生類別的成員函式
13.3.4 virtual函式
13.3.5 基本類別與衍生類別物件和指標間合法的賦值整理
13.4 Type欄位與switch敘述
13.5 抽象類別和純粹virtual函式
13.6 案例研究:利用多型建立的薪資系統
13.6.1 產生抽象基本類別Employee
13.6.2 產生具象衍生類別SalariedEmployee
13.6.3 產生具象衍生類別HourlyEmployee
13.6.4 產生具象衍生類別CommissionEmployee
13.6.5 產生間接具象衍生類別BasePlusCommissionEmployee
13.6.6 多型處理的範例
13.7 (選讀) 剖析多型,virtual函式和動態聯繫
13.8 案例研究:使用多型和執行時期向下轉型所得的資訊
(dynamic_cast、typeid 和 type_info) 完成的薪資系統
13.9 虛擬解構子
13.10 (選讀) 軟體工程實例研究:將繼承放入ATM系統中
第14章 樣板
14.1 簡介
14.2 函式樣版
14.3 將函式樣板多載
14.4 類別樣板
14.5 類別樣板的非型別參數和預設型別
14.6 樣板與繼承注意事項
14.7 樣板與夥伴注意事項
14.8 樣板與static成員注意事項
第15章 串流輸入/輸出
15.1 簡介
15.2 串流
15.2.1 典型串流與標準串流
15.2.2 iostream函式庫標頭檔
15.2.3 串流輸入/輸出類別和物件
15.3 串流輸出
15.3.1 輸出char *變數
15.3.2 使用成員函式put輸出字元
15.4 串流輸入
15.4.1 get與getline成員函式
15.4.2 istream的成員函式peek、putback和ignore
15.4.3 型別安全性I/O
15.5 使用read、write和gcount的非格式化I/O
15.6 串流操作子簡介
15.6.1 整數串流進位法:dec、oct、hex和setbase
15.6.2 浮點數的精準度 (precision和setprecision)
15.6.3 欄位寬度 (width和setw)
15.6.4 使用者自訂輸出串流操作子
15.7 串流格式狀態和串流操作子
15.7.1 補零和小數點 (showpoint)
15.7.2 對齊方式 (left、right和internal)
15.7.3 填補 (fill、setfill)
15.7.4 整數串流進位法 (dec、oct、hex、showbase)
15.7.5 浮點數、科學記號法和定點表示法 (scientific、fixed)
15.7.6 大寫/小寫控制 (uppercase)
15.7.7 指定Boolean格式 (boolalpha)
15.7.8 透過成員函式flags來設定和重設格式狀態
15.8 串流錯誤狀態
15.9 將輸出串流與輸入串流連結
第16章 例外處理
16.1 簡介
16.2 例外處理概述
16.3 範例:處理除零動作
16.4 何時使用例外處理
16.5 重新拋出例外
16.6 例外規格
16.7 處理非預期的例外
16.8 堆疊展開
16.9 建構子、解構子和例外處理
16.10 例外和繼承
16.11 處理new的錯誤
16.12 auto_ptr類別和動態記憶體配置
16.13 標準函式庫的例外階層
16.14 其他的錯誤處理技術
第17章 檔案處理
17.1 簡介
17.2 資料階層
17.3 檔案與串流
17.4 建立循序存取檔案
17.5 從循序存取檔案讀取資料
17.6 更新循序存取檔案
17.7 隨機存取檔案
17.8 建立隨機存取檔案
17.9 將資料隨機寫入隨機存取檔案
17.10 循序地從隨機存取檔案讀取
17.11 案例研究:交易處理程式
17.12 物件的輸入與輸出
第18章 字串類別與字串串流處理
18.1 簡介
18.2 字串賦值與串接
18.3 字串比較
18.4 子字串
18.5 字串交換
18.6 字串特性
18.7 在字串中搜尋字串和字元
18.8 在字串裡置換字元
18.9 插入字元到字串
18.10 轉換成指標基礎的C風格字串char * Strings
18.11 循環器
18.12 字串串流處理
第19章 網頁程式設計
19.1 簡介
19.2 HTTP 要求類型
19.3 多層架構
19.4 存取網頁伺服器
19.5 Apache HTTP伺服器
19.6 要求 XHTML 文件
19.7 簡介 CGI
19.8 簡單的 HTTP 處理程序
19.9 簡單的 CGI Scripts
19.10 傳送輸入到 CGI Script
19.11 使用 XHTML 格式傳送輸入
19.12 其他標頭檔
19.13 案例研究:互動式網頁
19.14 Cookie
19.15 伺服端檔案
19.16 案例研究:購物車
19.17 網際網路與網站上的資源
第20章 搜尋與排序
20.1 簡介
20.2 搜尋演算法
20.2.1 線性搜尋的效率
20.2.2 二分搜尋
20.3 排序演算法
20.3.1 選擇排序法的效率
20.3.2 插入排序法的效率
20.3.3 合併排序法 (遞迴實作)
第21章 資料結構
21.1 簡介
21.2 自我參照類別
21.3 動態記憶體配置與資料結構
21.4 鏈結串列
21.5 堆疊
21.6 佇列
21.7 樹
第22章 標準樣板函式庫
22.1 簡介標準樣板函式庫
22.1.1 簡介容器
22.1.2 簡介循環器
22.1.3 簡介演算法
22.2 循序式容器
22.2.1 vector循序式容器
22.2.2 list循序式容器
22.2.3 deque循序式容器
22.3.1 multiset關聯式容器
22.3.2 set關聯式容器
22.3.3 multimap關聯式容器
22.3.4 map關聯式容器
22.4 容器配接器
22.4.1 stack配接器
22.4.2 queue配接器
22.4.3 priority_queue配接器
22.5 演算法
22.5.1 fill、fill_n、generate和generate_n
22.5.2 equal、mismatch和lexicographical_compare
22.5.3 remove、remove_if、remove_copy和remove_copy_if
22.5.4 replace、replace_if、replace_copy和replace_copy_if
22.5.5 數學演算法
22.5.6 基本搜尋和排序演算法
22.5.7 swap、iter_swap和swap_ranges
22.5.8 copy_backward、merge、unique和reverse
22.5.9 inplace_merge、unique_copy和reverse_copy
22.5.10 集合操作
22.5.11 lower_bound、upper_bound和equal_range
22.5.12 堆積排序法
22.5.13 win和max
22.5.14 本章未討論的STL演算法
22.6 類別bitset
22.7 函式物件
22.8 STL的網際網路和全球資訊網資源
第23章 其它主題
23.1 簡介
23.2 const_cast運算子
23.3 命名空間
23.4 運算子關鍵字
23.5 可變類別成員
23.6 指向類別成員的指標 (.* 和 ->*)
23.7 多重繼承
23.8 多重繼承和virtual基本類別
23.9 書末評論
中英對照
商品簡介由 建宏書局 所提供

相關書籍