C++語言程序設計教程(第4版)

C++語言程序設計教程(第4版)

作者: 楊進才 沈顯君
出版社: 清華大學
出版在: 2022-01-01
ISBN-13: 9787302567561
ISBN-10: 7302567565
裝訂格式: 平裝
總頁數: 431 頁





內容描述


C++語言是目前***的程序設計語言之一,它既支持面向過程的結構化程序設計,也支持基於對象的面向對象程序設計。本書依據ANSI C++標準,從面向過程的編程到面向對象的編程方法展開,形成一條自然流暢的主線,同時兩個部分又自成體系,以滿足不同基礎與需求的學習者。


目錄大綱


章 面向對象程序設計與C
1.1 面向對象程序設計
1.1.1 面向對象的基本概念
1.1.2 面向對象的基本特徵
1.1.3 面向對象的程序設計
1.1.4 面向對象的軟件開發
1.2 C++語言程序設計
1.2.1 C++語言的產生
1.2.2 C++語言的特點
1.2.3 C++語言的發展
1.2.4 C++語言的應用
1.3 C++程序開發過程
1.4 C++程序實例
1.4.1 簡單的C++程序
1.4.2 使用名字空間
1.4.3 輸入/輸出簡介
本章小結
習題1
第2章 C++語言基礎
2.1 C++數據類型
2.1.1 C++字符集
2.1.2 C++基本數據類型
2.1.3 數值
2.2 變量與常量
2.2.1 標識符與關鍵字
2.2.2 變量的定義與賦初值
2.2.3 符號常量
2.2.4 常變量
2.3 運算符與表達式
2.3.1 運算符
2.3.2 表達式
2.3.3 類型轉換
2.4 控制結構
2.4.1 判斷
2.4.2 循環
2.4.3 轉移
2.5 函數
2.5.1 函數的定義
2.5.2 函數原型的聲明
2.5.3 函數的調用
2.5.4 內聯函數
2.5.5 函數的重載
2.5.6 常用的C++系統函數
本章小結
習題2
第3章 構造數據類型
3.1 枚舉類型
3.1.1 枚舉類型的定義
3.1.2 枚舉類型的使用
3.2 數組
3.2.1 一維數組的定義與使用
3.2.2 二維數組的定義與使用
3.2.3 多維數組
3.2.4 數組與函數
3.2.5 字符數組與字符串
3.3 指針
3.3.1 指針的定義與使用
3.3.2 指針與字符串
3.3.3 指針與數組
3.3.4 多重指針
3.3.5 動態內存分配
3.3.6 指針與函數
3.3.7 指針常量與常量指針
3.4 引用
3.4.1 引用的定義
3.4.2 引用與函數
3.4.3 常引用
3.5 結構與聯合
3.5.1 結構
3.5.2 聯合
本章小結
習題3
第4章 C++程序的結構
4.1 變量的類型
4.1.1 全局變量與局部變量
4.1.2 變量的存儲類型
4.1.3 變量在內存中的存儲
4.2 標識符的作用域與可見性
4.2.1 函數原型作用域
4.2.2 塊作用域
4.2.3 文件作用域
4.2.4 可見性
4.3 程序的文件結構與編譯預處理命令
4.3.1 文件包含命令#include
4.3.2 不帶參數的宏定義
4.3.3 帶參數的宏定義
4.3.4 條件編譯
4.4 名字空間
本章小結
習題4
第5章 類與對象
5.1 類與對象的概念
5.1.1 從面向過程到面向對象
5.1.2 類的定義
5.1.3 對象的建立與使用
5.1.4 成員的存取控制
5.2 構造函數與析構函數
5.2.1 構造函數
5.2.2 析構函數
5.2.3 拷貝構造函數
5.2.4 淺拷貝與深拷貝
5.3 對象的使用
5.3.1 對象指針
5.3.2 對象引用
5.3.3 對像數組
5.3.4 動態對象
5.3.5 this指針
5.3.6 組合對象
5.4 靜態成員
5.4.1 靜態數據成員
5.4.2 靜態成員函數
5.5 友元
5.5.1 友元函數
5.5.2 友元類
5.6 常成員與常對象
5.6.1 函數實參的保護
5.6.2 常對象
5.6.3 常數據成員

  1. 常成員函數
    5.7 對象的內存分佈
    5.7.1 對象的內存空間的分配
    5.7.2 對象的內存空間的釋放
    本章小結
    習題5
    第6章 繼承與派生
    6.1 繼承與派生的概念
    6.1.1 繼承的概念
    6.1.2 派生類的實現
    6.1.3 繼承與組合
    6.2 繼承的方式
    6.2.1 公有繼承
    6.2.2 私有繼承
    6.2.3 保護繼承
    6.3 派生類的構造與析構
    6.3.1 派生類構造函數的定義
    6.3.2 單繼承的構造與析構
    類型兼容
    6.5 多繼承
    6.5.1 多繼承的構造與析構
    6.5.2 二義性問題
    6.6 虛基類
    6.6.1 虛基類的定義
    6.6.2 虛基類的構造與析構
    本章小結
    習題6
    第7章 多態性
    7.1 多態性概述
    7.2 運算符重載
    7.2.1 運算符重載機制
    7.2.2 運算符重載規則
    7.2.3 重載為類的友元函數
    7.2.4 重載為類的成員函數
    7.2.5 典型運算符重載
    7.3 虛函數
    7.3.1 靜態聯編與動態聯編
    7.3.2 虛函數的定義與使用
    7.3.3 虛析構函數
    7.4 抽像類
    7.4.1 純虛函數
    7.4.2 抽像類與具體類
    7.4.3 對象指針數組
    本章小結
    習題7
    第8章 模板
    8.1 模板簡介
    8.2 函數模板
    8.3 類模板
    8.3.1 類模板的定義
    8.3.2 類模板的實例化
    8.3.3 默認模板參數
    8.4 模板編程
    8.4.1 棧類模板
    8.4.2 鍊錶類模板
    本章小結
    習題8
    第9章 STL編程
    9.1 STL編程思想
    9.2 STL容器
    9.2.1 順序容器
    9.2.2 關聯容器
    9.3 STL算法
    9.4 STL函數對象
    本章小結
    習題9
    0章 輸入/輸出流與文件系統
    10.1 輸入/輸出流的概念
    10.2 輸出流
    10.3 流的格式控制
    10.3.1 格式控制標誌
    10.3.2 格式縱符
    10.3.3 格式控製成員函數
    10.4 輸入流
    10.5 數據流的錯誤偵測
    10.6 文件的輸入/輸出
    10.6.1文件的創建
    10.6.2文本文件的輸出
    10.6.3二進製文件的輸出
    10.6.4文本文件的輸入
    10.6.5二進製文件的輸入
    10.6.6文件指針的使用
    本章小結
    習題10
    第11章string類字符串處理
    11.1string類對象的定義
    11.2string類成員函數
    11.3string類的操作符
    11.4string類串位置指針
    11.5string類串與C風格字符串的轉化
    本章小結
    習題11
    第12章異常處理
    12.1異常的概念
    12.2C++異常處理機制
    12.3異常處理嵌套與重拋異常
    12.3.1異常處理嵌套
    12.3.2重拋異常
    12.4標準異常處理類
    本章小結
    習題12
    第13章C++語言新標準簡介
    13.1C++語言標準的發展
    13.1.1C++標準發展的歷程
    13.1.2C++11標準簡介
    13.1.3C++20標準簡介
    13.2C++11關鍵字及新語法
    13.2.1auto關鍵字
    13.2.2decltype關鍵字
    13.2.3字面值nullptr
    13.2.4範圍for語句
    13.3C++11智能指針內存管理
    13.3.1獨佔指針unique_ptr
    13.3.2共享指針shared_ptr
    13.3.3weak_ptr指針
    13.4Lambda表達式
    13.5右值引用與移動語義
    13.5.1左值與右值
    13.5.2左值引用與右值引用
    13.5.3移動語義
    13.5.4完美轉發
    13.6C++11新增容器
    13.6.1array與forward_list
    13.6.2std∷forward_list
    13.6.3無序容器
    13.6.4元組 std∷tuple
    本章小結
    附錄A數值的機內表示
    A.1數值的各種進製表示形式
    A.2整數的機內表示
    A.3小數的機內表示
    附錄BC++語言中的關鍵字(保留字)
    附錄C運算符優先級表
    附錄DASCII碼字符集
    附錄EGB 2312—80漢字字符集
    附錄FGBK漢字字符集
    參考文獻

作者介紹


沈顯君,博士,華中師範大學計算機學院教授,碩士生導師。 2000年畢業於華中師範大學計算機科學系,獲計算機應用技術工學碩士學位,同年畢業留校任教。 2004年~2007年在武漢大學軟件工程國家重點實驗室攻讀博士學位,獲計算機軟件與理論工學博士學位。發表論文40多篇,其中被SCI/EI檢索30餘篇。




相關書籍

生活科技應用網路概論, 2/e

作者 鄧文淵 總監製 文淵閣工作室

2022-01-01

嵌入式 Linux 驅動開發教程

作者 華清遠見嵌入式學院 薑先剛 劉洪濤

2022-01-01

Quantum Computing without Magic: Devices (Paperback)

作者 Zdzislaw Meglicki

2022-01-01