首頁 搜尋 我的知識庫
由重構學習C++程式設計

由重構學習C++程式設計

作者: 劉邦鋒
出版社: 國立臺灣大學出版中心
出版日期: 2023/06/26
ISBN-13: 9789863507123
書店 1







內容描述


本書主要針對高中與大學開始接觸程式設計的初學者,及想學好C++11程式設計的讀者所設計。書中文字敘述力求淺顯簡潔,並以大量範例、片語、學習要點、風格要點等方式,逐步引導初學者進入程式設計的領域。

  這本書以「重構」為中心,也就是以一再改寫來引導初學者,強調機制的原理與應用,並用於程式之中。期待藉此正確的程式設計技術傳遞給廣大讀者群,以提升讀者對程式設計的興趣。

本書特色

  1. 以「重構」為中心,也就是以一再改寫來引導初學者。

  2. 透過「學習要點」、「風格要點」、「特殊字元」等設計,隨時提醒讀者各項學習重點,以提升學習效率。

  3. 本書搭配專屬網站(sites.google.com/view/cplusplusrefactor),提供各章練習題、作業,並隨時更新相關補充資料、程式碼等資訊。

  4. 以更多完整範例、相關圖示說明複雜的觀念與方法,同時強化各範例間的關聯性,讓讀者能從中反覆練習、更瞭解所學之實際應用。


目錄大綱


前言
關於「批改娘」

1 程式設計
1.1 程式
1.2 設計

2 基本程式架構
2.1 程式骨架
2.2 變數
2.3 輸出
2.4 輸入

3 運算
3.1 指定
3.2 運算

4 判斷
4.1 if 判斷
4.2 判斷式值
4.3 switch 判斷

5 迴圈
5.1 while 迴圈
5.2 for 迴圈
5.3 do while 迴圈
5.4 break
5.5 continue
5.6 巢狀迴圈

6 標準輸入輸出
6.1 輸入資料
6.2 輸出訊息
6.3 多變數輸出入
6.4 格式輸出入操控子

7 陣列
7.1 屬性
7.2 一維陣列
7.3 assert
7.4 一維陣列應用
7.5 多維陣列
7.6 多維陣列應用

8 浮點數
8.1 宣告
8.2 位元組數
8.3 輸出與輸入
8.4 類別轉換
8.5 泰勒展開式
8.6 開平方根

9 函式
9.1 呼叫函式
9.2 定義有回傳值的函式
9.3 定義無回傳值的函式
9.4 多個參數的函式
9.5 參數傳遞
9.6 生命遊戲
9.7 鏡子房間
9.8 井字遊戲
9.9 結語

10 指標
10.1 指標變數
10.2 指標參數傳遞
10.3 指標與陣列
10.4 指標回傳值
10.5 用途與限制

11 參考類別
11.1 宣告及初始
11.2 參數傳遞
11.3 參考回傳值
11.4 參考應用

12 字元
12.1 宣告
12.2 輸出
12.3 字元常數
12.4 輸入
12.5 常用函式

13 宣告修飾
13.1 修飾大小
13.2 有號及無號
13.3 C++11 標準類別
13.4 常數
13.5 靜態宣告
13.6 auto

14 字串
14.1 宣告及輸出入
14.2 串接
14.3 字串常數
14.4 操作函式
14.5 C-style字串
14.6 簡易BASIC解譯器

15 位元運算
15.1 宣告
15.2 檢查位元
15.3 位元且
15.4 位元或
15.5 位元互斥或
15.6 位元互補
15.7 位元數目排序

16 結構
16.1 結構宣告
16.2 結構欄位
16.3 表列初始
16.4 結構指標
16.5 記憶體位址
16.6 參數傳遞
16.7 標頭檔
16.8 生命遊戲
16.9 鏡子房間
16.10 繞圈
16.11 位元數目排序
16.12 井字遊戲
16.13 簡易BASIC解譯器
16.14 結語

17 模組化
17.1 vector
17.2 生命遊戲
17.3 井字遊戲
17.4 鏡子房間
17.5 繞圈
17.6 BASIC

18 類別
18.1 井字遊戲
18.2 權限
18.3 類別與結構
18.4 建構子
18.5 常數成員函式
18.6 類別與實體
18.7 類別成員
18.8 鏡子房間
18.9 繞圈
18.10 生命遊戲
18.11 BASIC
18.12 有理數

19 遞迴
19.1 定義
19.2 費伯納西數
19.3 計算時間
19.4 constexpr
19.5 最大公因數
19.6 遞迴實作
19.7 三位撇節法
19.8 河內塔
19.9 八后問題
19.10 老鼠走迷宮
19.11 數獨
19.12 疊紙片
19.13 效能考量

20 繼承
20.1 基礎類別
20.2 多載
20.3 繞圈
20.4 老鼠走迷宮
20.5 數獨
20.6 井字遊戲
20.7 生命遊戲
20.8 鏡子房間

21 運算子
21.1 運算子函式
21.2 位元數目排序
21.3 有理數
21.4 比較1位元個數
21.5 lambda function
21.6 位元數目排序重構
21.7 頂層運算子函式
21.8 錯誤處理
21.9 隱藏類別轉換
21.10 explicit

22 鏈結序列
22.1 資料結構
22.2 記憶體配置
22.3 名稱空間
22.4 鏈結序列
22.5 鏈結序列遞迴實作
22.6 排序鏈結序列
22.7 鏈結序列範例
22.8 堆疊

23 移動與深度複製
23.1 指標物件問題
23.2 移動
23.3 深度複製
23.4 建構子

24 智慧指標
24.1 共享指標
24.2 唯一指標

25 二元樹
25.1 節點類別
25.2 二元樹
25.3 二元搜尋樹
25.4 重建二元樹
25.5 二元樹交集及聯集

26 多型與虛擬函式
26.1 函式綁定
26.2 多型
26.3 BASIC

27 檔案處理
27.1 開啟與關閉檔案
27.2 標準檔案指標
27.3 文字檔案處理
27.4 二進制檔案處理
27.5 移動讀寫位置
27.6 EOF

28 運算子及多載
28.1 運算子
28.2 二元樹交集聯集
28.3 函數
28.4 檔案輸入

29 模板
29.1 類別模板
29.2 函式模板
29.3 別名模板

30 前置處理
30.1 引入
30.2 定義
30.3 條件編譯
30.4 巨集函數
30.5 #、LINE、FILE
30.6 ##
30.7 應用

31 不想教的東西
31.1 goto
31.2 全域變數
31.3 多重繼承
31.4 保護及私有繼承
31.5 朋友類別及函式
31.6 輸出格式
31.7 指標技巧
31.8 修改記憶體
31.9 征服銀河系

徵引書目
Index


作者介紹


作者簡介
    
劉邦鋒

  現任
  國立臺灣大學資訊工程系暨資訊網路與多媒體研究所教授

  學歷
  美國耶魯大學計算機科學博士

  研究專長
  平行分散式系統、演算法設計與分析

  講授課程
  計算機程式設計、高等程式設計、物件導向程式設計、平行程式設計等。






相關書籍

Python機器學習第三版(下)

Raspberry Pi 樹莓派:Python x AI 超應用聖經

Web應用系統安全|現代Web應用程式開發的資安對策

最新 LINE官方帳號|邁向百萬星級店家