出版時間:2010-9 出版社:西安電子科技大學出版社 作者:李蘭 編 頁數(shù):352 字數(shù):535000
前言
C++語言為面向對象技術提供了全面支持,是目前應用較廣的一種優(yōu)秀的高級程序設計語言,也是一個可編寫高質量的用戶自定義類型庫的工具。C++保留了對傳統(tǒng)的結構化程序設計方法的支持,同時又增加了對面向對象程序設計方法的完全支持,但后者是其主要特色和應用。C++語言是一種具有代表性的面向對象的程序設計語言,它具有豐富的數(shù)據(jù)類型和各種運算功能,帶有龐大的函數(shù)庫和類庫,既支持面向過程的程序設計,又支持面向對象的程序設計?! ∧壳?,國內外許多高等院校計算機專業(yè)和相關專業(yè)都開設了“面向對象程序設計”課程,其目的是讓學生掌握面向對象程序設計的概念和方法,深刻理解面向對象程序設計的本質,并用面向對象技術來開發(fā)軟件?! ”緯η笤趦热?、編排順序和教學方法上有所創(chuàng)新和突破,以幫助學生快速理解與程序設計相關的基本概念,掌握程序設計語言的基本知識,建立程序設計的基本思想,并通過實際動手領會和掌握C++的精髓,最終獲得面向對象C++程序設計的真實本領,為今后的進一步學習和開發(fā)應用打下堅實的基礎?! 』谶@些理念,本書對C++語言的基本概念、原理和方法的敘述由淺入深,條理分明、循序漸進;以“概念-語法-舉例”的形式進行講解,并指出了學生常犯的錯誤和容易混淆的概念;各章均配有大量的習題,以幫助學生深入理解面向對象語言和C++的性質。
內容概要
面向對象程序設計是目前流行的軟件開發(fā)方法。本書根據(jù)“面向對象程序設計”課程的基本教學要求,針對面向對象的本質和特性,系統(tǒng)地講解了面向對象程序設計的基本理論和基本方法,闡述了用C++語言實現(xiàn)面向對象基本特性的關鍵技術。本書的內容主要包括:面向對象程序設計概述、C++語言基礎、封裝性、繼承性、運算符重載、多態(tài)性、模板和STL、輸入/輸出流、異常處理等。
本書可作為高等院校計算機及相關專業(yè)“C++面向對象程序設計”課程的教材,也可作為從事計算機開發(fā)和應用的工程技術人員的參考書。同時,也適合初學程序設計或有一定編程實踐基礎、希望突破編程難點的讀者作為自學教材。
書籍目錄
第1章 面向對象程序設計概述
1.1 計算機程序設計語言的發(fā)
1.1.1 程序設計語言概述
1.1.2 機器語言與匯編語言
1.1.3 高級語言
1.1.4 面向對象語言
1.2 程序設計方法
1.2.1 結構化程序設計方法
1.2.2 面向對象程序設計方法
1.3 面向對象程序設計的基本特點
1.3.1 抽象
1.3.2 封裝
1.3.3 消息
1.3.4 繼承
1.3.5 多態(tài)
1.4 簡單的C++程序
本章小結
習題1
第2章 C++語言基礎
2.1 C++字符集和關鍵字
2.1.1 字符集
2.1.2 標識符
2.1.3 關鍵字
2.1.4 其他標識
2.2 基本數(shù)據(jù)類型和表達式
2.2.1 C++的基本數(shù)據(jù)類型
2.2.2 常量
2.2.3 變量
2.2.4 表達式
2.3 運算符與表達式
2.3.1 算術運算符與算術表達式
2.3.2 關系運算與邏輯運算
2.3.3 賦值運算符與賦值表達式
2.3.4 條件運算符與逗號表達式
2.3.5 表達式的副作用和表達式語句
2.4 C++程序的基本控制結構
2.4.1 程序的結構與控制
2.4.2 順序結構程序設計
2.4.3 選擇結構程序設計
2.4.4 循環(huán)結構程序設計
2.5 動態(tài)內存分配
2.5.1 動態(tài)內存
2.5.2 和運算符
2.6 常見編程錯誤
本章小結
習題2
第3章 函數(shù)
3.1 函數(shù)的定義和聲明
3.1.1 函數(shù)的定義
3.1.2 函數(shù)的聲明
3.1.3 函數(shù)值和函數(shù)類型
3.2 函數(shù)的調用與參數(shù)傳遞
3.2.1 函數(shù)的調用
3.2.2 函數(shù)調用時的參數(shù)傳遞
3.2.3 函數(shù)的嵌套調用和遞歸調用
3.3 內聯(lián)函數(shù)
3.4 函數(shù)重載
3.4.1 函數(shù)重載的定義
3.4.2 函數(shù)重載的綁定
3.5 帶默認形參值的函數(shù)
3.6 作用域與生存期
3.6.1 標識符的作用域
3.6.2 局部變量與全局變量
3.6.3 動態(tài)變量與靜態(tài)變量
3.6.4 變量的存儲類型
3.6.5 生存期
3.6.6 名字空間
3.7 多文件結構
3.8 常見編程錯誤
本章小結
習題3
第4章 類與對象
4.1 類和對象
4.1.1 類與抽象數(shù)據(jù)類型
4.1.2 類的聲明和定義
4.1.3 類的函數(shù)成員的實現(xiàn)
4.1.4 類和對象
4.1.5 類的訪問屬性
4.2 構造函數(shù)與析構函數(shù)
4.2.1 構造函數(shù)
4.2.2 缺省構造函數(shù)
4.2.3 拷貝構造函數(shù)
4.2.4 轉換構造函數(shù)
4.2.5 析構函數(shù)
4.3常成員
4.3.1 cot修飾符
4.3.2 常數(shù)據(jù)成員
4.3.3 常函數(shù)成員
4.4 指向對象的指針
4.4.1 對象指針
4.4.2 this指針
4.5 靜態(tài)成員與友元
4.5.1 靜態(tài)數(shù)據(jù)成員與靜態(tài)函數(shù)成員
4.5.2 友元函數(shù)與友元類
4.6 常見編程錯誤
本章小結
習題
第5章 繼承
5.1 繼承與派生
5.1.1 繼承的概念
5.1.2 派生類的聲明
5.2 派生類的訪問控制
5.2.1 公有繼承
5.2.2 私有繼承
5.2.3 保護繼承
5.3 派生類的構造函數(shù)與析構函數(shù)
5.3.1 派生類的構造函數(shù)
5.3.2 派生類構造函數(shù)調用規(guī)
5.3.3 派生類的析構函數(shù)
5.4 多繼承
5.4.1 多繼承概念
5.4.2 多繼承中的二義性問題及其解決
5.4.3 多繼承中構造函數(shù)和析構函數(shù)的調用順序
5.5 虛基類
5.5.1 多繼承派生的基類拷貝
5.5.2 虛基類的定義
5.5.3 虛基類的構造與析構
5.6 賦值兼容規(guī)
5.7 程序舉例
5.8 常見編程錯誤
本章小結
習題5
第6章 多態(tài)與虛函數(shù)
6.1 靜態(tài)聯(lián)編和動態(tài)聯(lián)編
6.1.1 靜態(tài)聯(lián)編
6.1.2 動態(tài)聯(lián)編
6.2 虛函數(shù)
6.2.1 虛函數(shù)的定義和使用
6.2.2 虛函數(shù)的特性
6.3 純虛函數(shù)和抽象類
6.3.1 純虛函數(shù)
6.3.2 抽象類
6.3.3 抽象類的應用
6.4 運算符重載
6.4.1 運算符重載的規(guī)則
6.4.2 運算符重載為成員函數(shù)
6.4.3 運算符重載為友元函數(shù)
6.5 實例分析
6.5.1 問題提出
6.5.2 類設計
6.5.3 程序代碼設計
6.6 常見編程錯誤
本章小結
習題6
第7章 模板
7.1 模板的概念
7.2 函數(shù)模板與模板函數(shù)
7.2.1 函數(shù)模板的聲明
7.2.2 函數(shù)模板
7.2.3 模板函數(shù)
7.2.4 重載函數(shù)模板
7.3 類模板與模板類
7.3.1 類模板的定義
7.3.2 類模板的使用
7.3.3 類模板的友元
7.3.4 類模板與靜態(tài)成員
7.4 標準模板庫
7.4.1 容器
7.4.2 迭代器
7.4.3 算法
7.4.4 適配器
7.5 常見編程錯誤
本章小結
習題7
第8章 輸入/輸出流
8.1 流以及流類庫結構
8.1.1 流的概念
8.1.2 流類庫
8.2 非格式化的輸入和輸出
8.3 格式化的輸入和輸出
8.3.1 ios類中定義的格式控制標志開
8.3.2 操作符
8.3.3 格式化輸入和輸出的簡單應用
8.4 文件的輸入和輸出
8.4.1 文件與流
8.4.2 文件的打開和關閉
8.4.3 讀/寫文本文件
8.5 常見編程錯誤
本章小結
習題8
第9章 異常處理
9.1 異常的概念
9.2 異常處理機制及意義
9.3 標準異常
9.4 異常的捕獲
9.4.1 try塊
9.4.2 throw表達式
9.4.3 異常處理器印
9.4.4 異常規(guī)格說
9.4.5 捕獲所有類型的異常
9.4.6 未捕獲的異常
9.5 異常處理中的構造與析構
9.5.1 在構造函數(shù)中拋出異常
9.5.2 不要在析構函數(shù)中拋出異常
9.6 開銷
9.7 常見編程錯誤
本章小結
習題9
附錄Ⅰ 標準字符碼表
附錄Ⅱ C++程序錯誤提示中英文對照表
參考文獻
章節(jié)摘錄
1.機器語 最基本的計算機語言是機器語言。機器語言(也稱為第一代語言)使用二進制位來表示程序指令。計算機的硬件系統(tǒng)可以直接識別和執(zhí)行的二進制指令(機器指令)的集合稱為這種計算機的機器語言。每種計算機都有自己的機器語言,并能直接執(zhí)行用機器語言所編寫的程序。雖然絕大多數(shù)計算機完成的功能基本相近,但不同計算機的設計者都可能會采用不同的二進制代碼集來表示程序指令。所以,不同種類的計算機使用的計算機語言并不一定相同,但現(xiàn)代計算機都是以二進制代碼的形式來存儲和處理數(shù)據(jù)的。 在早期的計算機應用中,程序都是用機器語言編寫的,程序員需要記住各種操作的機器語言指令。同時,為了存取數(shù)據(jù),程序員還必須記住所有數(shù)據(jù)在內存中的存儲地址。例如,字母A表示為1010,數(shù)字9表示為1001。由于機器語言的指令碼可能有多種形式,還要考慮運算中的進位、借位和符號溢出等各種情況,因此更增加了程序員的記憶負擔。這種需要記住大量的編碼指令來編寫程序的方法不僅難以實現(xiàn),而且非常容易出錯。直接使用機器語言來編寫程序是一種相當復雜的手工勞動,它要求使用者熟悉計算機的有關細節(jié),一般的工程技術人員是難以掌握的?! ?.匯編語言 匯編語言(也稱為第二代語言)的出現(xiàn)簡化了編程人員的工作。匯編語言將機器指令映射為一些可以被人讀懂的助記符,如ADD、MOV等,它實際上是與機器語言相對應的語言。匯編語言的主要特征是可以用助記符來表示每一條機器指令。匯編語言同機器語言相比,并沒有本質的區(qū)別,只不過是把機器指令用助記符號代替。由于匯編語言比機器語言容易記憶,因此其編程效率比機器語言前進了一大步,而且改進了程序的可讀性和可維護性。直到今天,仍然有人用匯編語言進行編程。但匯編語言程序的大部分語句還是和機器指令一一對應的,與機器的相關性仍然很強。 ……
圖書封面
評論、評分、閱讀與下載