新概念C++程序設(shè)計(jì)大學(xué)教程-(第3版) 版權(quán)信息
- ISBN:9787302481546
- 條形碼:9787302481546 ; 978-7-302-48154-6
- 裝幀:一般膠版紙
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:>>
新概念C++程序設(shè)計(jì)大學(xué)教程-(第3版) 本書特色
本書是一本面向大學(xué)計(jì)算機(jī)專業(yè)的C 程序設(shè)計(jì)教材,以面向?qū)ο蟪绦蛟O(shè)計(jì)為主線,突出C 的基本特點(diǎn),介紹C 1y的重要新特性。全書共分為4篇11個(gè)單元。
第1篇:C 面向?qū)ο笃鸩健S?個(gè)單元幫助初學(xué)者建立面向?qū)ο蟮膯?wèn)題分析思維,掌握相關(guān)方法和語(yǔ)法知識(shí),樹立面向?qū)ο蟪绦蛑?ldquo;一切皆對(duì)象,一切來(lái)自類”的意識(shí),初步領(lǐng)略面向?qū)ο蟪绦蛟O(shè)計(jì)的奧妙。
第2篇:C 面向抽象程序設(shè)計(jì)。用兩個(gè)單元介紹C 的繼承機(jī)制,并幫助讀者理解如何在一個(gè)程序中組織類,以及什么樣的類結(jié)構(gòu)才是好的程序結(jié)構(gòu)。
第3篇:C 泛型程序設(shè)計(jì)。用兩個(gè)單元介紹多態(tài)性和STL。C 的泛型的通用、靈活的特點(diǎn)將給讀者的學(xué)習(xí)帶來(lái)一定樂(lè)趣,也為讀者將來(lái)從事程序開發(fā)工作提供了更多便捷方法。
第4篇:C 深入編程。用3個(gè)單元介紹C 實(shí)體訪問(wèn)、函數(shù)和I/O流等方面的細(xì)節(jié)和內(nèi)容,進(jìn)一步豐富程序設(shè)計(jì)語(yǔ)言機(jī)制,使讀者在程序開發(fā)上能夠錦上添花。
本書理念先進(jìn)、概念清晰、講解透徹、便于理解。書中例題經(jīng)典、習(xí)題豐富、覆蓋面廣,適合作為高等學(xué)校各專業(yè)的面向?qū)ο蟪绦蛟O(shè)計(jì)教材。本書還可供培訓(xùn)機(jī)構(gòu)使用,也可供相關(guān)領(lǐng)域人員自學(xué)。
新概念C++程序設(shè)計(jì)大學(xué)教程-(第3版) 內(nèi)容簡(jiǎn)介
零起點(diǎn),實(shí)例引導(dǎo),輕松入門,逐步深入。? 凸出面向?qū)ο笏季S,彰顯C 精彩,靠攏C 1y。? 注重面向?qū)ο蟮乃季S訓(xùn)練和語(yǔ)言藝術(shù)的發(fā)揮。? 提倡探索式學(xué)習(xí)。? 彈性大,余味長(zhǎng),鼓勵(lì)創(chuàng)新,適合多層次教學(xué)。? 大題量、多類型、寬覆蓋面。
新概念C++程序設(shè)計(jì)大學(xué)教程-(第3版) 目錄
目錄
第1篇 C 面向?qū)ο笃鸩?第1單元 職員類 3
1.1 從具體對(duì)象到職員類 3
1.1.1
具體職員對(duì)象的分析與描述 3
1.1.2
Employee類的聲明 4
1.1.3
C 保留字、標(biāo)識(shí)符與名字空間 5
1.2
C 基本數(shù)據(jù)類型 7
1.2.1
C 算術(shù)數(shù)據(jù)類型的表示格式 7
1.2.2
C 算術(shù)數(shù)據(jù)類型的取值范圍 9
1.2.3
C 運(yùn)算符與算術(shù)數(shù)據(jù)類型的操作集合 10
1.3 表達(dá)式 11
1.3.1
字面值 11
1.3.2
數(shù)據(jù)實(shí)體 11
1.3.3
含有操作符的表達(dá)式 13
1.3.4
表達(dá)式中的隱式數(shù)據(jù)類型轉(zhuǎn)換 14
1.4 函數(shù) 15
1.4.1
函數(shù)的關(guān)鍵環(huán)節(jié) 15
1.4.2
標(biāo)準(zhǔn)輸出流cout與printEmployee() 函數(shù) 17
1.4.3
構(gòu)造函數(shù)與析構(gòu)函數(shù) 18
1.4.4
構(gòu)造函數(shù)重載 21
1.4.5
復(fù)制構(gòu)造函數(shù) 22
1.4.6
主函數(shù) 24
1.5 程序編譯 26
1.5.1
編譯預(yù)處理 26
1.5.2
編譯和連接 28
1.5.3
多文件程序的編譯 28
1.6 知識(shí)鏈接 30
1.6.1
C 字面值 30
1.6.2
const符號(hào)常量 33
1.6.3
指針=基類型 地址 34
1.6.4
指向?qū)ο蟮闹羔樑cthis 36
1.6.5
引用 38
習(xí)題1 39
第2單元 簡(jiǎn)單計(jì)算器 44
2.1 簡(jiǎn)單計(jì)算器建模 44
2.1.1
簡(jiǎn)單計(jì)算器分析 44
2.1.2
Calculator類的聲明 44
2.2
calculate( )函數(shù)的實(shí)現(xiàn) 45
2.2.1
布爾類型與關(guān)系運(yùn)算符 45
2.2.2
用if-else結(jié)構(gòu)實(shí)現(xiàn)成員函數(shù)calculate( ) 46
2.2.3
用switch結(jié)構(gòu)實(shí)現(xiàn)calculate( ) 48
2.2.4
if-else判斷結(jié)構(gòu)與switch判斷結(jié)構(gòu)比較 49
2.2.5
Calculator類測(cè)試 49
2.3
C 異常處理 52
2.3.1
程序錯(cuò)誤 52
2.3.2
C 異常處理機(jī)制 54
2.3.3
C 異常處理技術(shù) 55
2.3.4
用類作為異常類型 58
2.3.5
捕獲任何異常 62
2.4 簡(jiǎn)單桌面計(jì)算器的改進(jìn) 63
2.4.1
使用浮點(diǎn)數(shù)計(jì)算的Calculator類 63
2.4.2
標(biāo)準(zhǔn)輸入流與鍵盤輸入 64
2.4.3
簡(jiǎn)單多項(xiàng)式計(jì)算的實(shí)現(xiàn) 67
2.4.4
用重復(fù)結(jié)構(gòu)實(shí)現(xiàn)任意多項(xiàng)式計(jì)算 72
2.5 知識(shí)鏈接 74
2.5.1
條件表達(dá)式 74
2.5.2
局部變量 74
2.5.3
類屬變量、實(shí)例變量與局部變量的比較 76
習(xí)題2 76
第3單元 素?cái)?shù)產(chǎn)生器 81
3.1 問(wèn)題描述與對(duì)象建模 81
3.1.1
對(duì)象建模 81
3.1.2
getPrimeSequence( )函數(shù)的基本思路 82
3.2 使用isPrime( )的PrimeGenerator類實(shí)現(xiàn) 82
3.2.1
用for結(jié)構(gòu)實(shí)現(xiàn)的getPrimeSequence( )函數(shù) 82
3.2.2
用for結(jié)構(gòu)實(shí)現(xiàn)的isPrime( )函數(shù) 84
3.2.3
完整的PrimeGenerator類及其測(cè)試 84
3.3 不使用isPrime( )的PrimeGenerator類實(shí)現(xiàn) 85
3.3.1
采用嵌套重復(fù)結(jié)構(gòu)的getPrimeSequence( )函數(shù) 85
3.3.2
重復(fù)結(jié)構(gòu)中的continue語(yǔ)句和break語(yǔ)句 86
3.4 數(shù)組 87
3.4.1
數(shù)組及其定義 87
3.4.2
數(shù)組的初始化規(guī)則 89
3.4.3
用數(shù)組存儲(chǔ)素?cái)?shù)序列 90
3.4.4
sizeof操作符 91
3.4.5
C 11中基于容器的for循環(huán) 91
3.4.6
數(shù)組prime的聲明 92
3.5
string類型 94
3.6 知識(shí)鏈接 94
3.6.1
C 操作符 94
3.6.2
左值表達(dá)式與右值表達(dá)式 96
3.6.3
具有副作用的表達(dá)式與序列點(diǎn) 97
3.6.4
表達(dá)式類型的推斷與獲取:auto 與decltype 98
3.6.5
類型轉(zhuǎn)換構(gòu)造函數(shù)與explicit關(guān)鍵字 101
3.6.6
C 語(yǔ)句 105
習(xí)題3 105
第4單元 Time類 110
4.1
Time類需求分析與操作符重載 110
4.1.1
Time類需求分析 110
4.1.2
關(guān)鍵字operator與操作符重載 111
4.1.3
操作符 的重載 112
4.1.4
增量操作符 的重載 113
4.1.5 用友元函數(shù)實(shí)現(xiàn)
4.1.6
賦值操作符=的重載 117
4.1.7
操作符重載的基本規(guī)則 118
4.1.8
Time類的類型轉(zhuǎn)換構(gòu)造函數(shù) 120
4.2 淺復(fù)制與深復(fù)制 122
4.2.1
數(shù)據(jù)復(fù)制及其問(wèn)題 122
4.2.2
復(fù)制構(gòu)造函數(shù)再討論 124
4.2.3
深復(fù)制的賦值操作符重載 126
4.3 動(dòng)態(tài)內(nèi)存分配 127
4.3.1
用new進(jìn)行動(dòng)態(tài)內(nèi)存分配 127
4.3.2
用delete釋放動(dòng)態(tài)存儲(chǔ)空間 128
4.3.3
對(duì)象的動(dòng)態(tài)存儲(chǔ)分配 129
4.3.4
動(dòng)態(tài)內(nèi)存分配時(shí)的異常處理 131
4.4 對(duì)象數(shù)組 132
4.4.1
對(duì)象數(shù)組的定義 132
4.4.2
對(duì)象數(shù)組元素的訪問(wèn) 133
4.4.3
數(shù)組存儲(chǔ)空間的動(dòng)態(tài)分配 134
4.5 知識(shí)鏈接 134
4.5.1
友元 134
4.5.2
const修飾類成員與對(duì)象 138
4.5.3
enum類型 140
習(xí)題4 144
第2篇 C 面向抽象程序設(shè)計(jì)
第5單元 繼承 153
5.1 單基繼承 153
5.1.1
公司人員的類層次結(jié)構(gòu)模型 153
5.1.2
C 繼承關(guān)系的建立 153
5.1.3
在派生類中重定義基類成員函數(shù) 157
5.1.4
基于血緣關(guān)系的訪問(wèn)控制——protected 159
5.1.5
類層次結(jié)構(gòu)中構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行順序 160
5.2 類層次中的賦值兼容規(guī)則與里氏代換原則 163
5.2.1
類層次中的類型賦值兼容規(guī)則 163
5.2.2
里氏代換原則 164
5.2.3
對(duì)象的向上轉(zhuǎn)換和向下轉(zhuǎn)換 164
5.3 多基繼承 165
5.3.1
C 多基繼承格式 165
5.3.2
計(jì)算機(jī)系統(tǒng)=軟件 硬件問(wèn)題的類結(jié)構(gòu) 165
5.3.3
多基繼承的歧義性問(wèn)題 167
5.3.4
虛擬基類 169
5.4 用虛函數(shù)實(shí)現(xiàn)動(dòng)態(tài)綁定 170
5.4.1
畫圓、三角形和矩形問(wèn)題的類結(jié)構(gòu) 170
5.4.2
虛函數(shù)與動(dòng)態(tài)綁定 171
5.4.3
虛函數(shù)表與虛函數(shù)規(guī)則 173
5.4.4
override和final 175
5.4.5
純虛函數(shù)與抽象類 177
5.5 運(yùn)行時(shí)類型鑒別 179
5.5.1
RTTI概述 179
5.5.2
dynamic_cast 179
5.5.3
type_info類與typeid操作符 185
習(xí)題5 188
第6單元 C 程序結(jié)構(gòu)優(yōu)化 195
6.1 面向?qū)ο蟪绦蛟O(shè)計(jì)的幾個(gè)原則 195
6.1.1
引言 195
6.1.2
從可重用說(shuō)起:合成/聚合優(yōu)先原則 197
6.1.3
從可維護(hù)性說(shuō)起:開閉原則 199
6.1.4
面向抽象原則 201
6.1.5
單一職責(zé)原則 207
6.1.6
接口分離原則 208
6.1.7
不要和陌生人說(shuō)話 212
6.2
GoF設(shè)計(jì)模式舉例:工廠模式 214
6.2.1
概述 214
6.2.2
簡(jiǎn)單工廠模式 215
6.2.3
工廠方法模式 217
習(xí)題6 219
第3篇 C 泛型程序設(shè)計(jì)
第7單元 模板 223
7.1 算法抽象模板--函數(shù)模板 223
7.1.1
從函數(shù)重載到函數(shù)模板 223
7.1.2
函數(shù)模板的實(shí)例化與具體化 224
7.2 數(shù)據(jù)抽象模板--類模板 227
7.2.1
類模板的定義 227
7.2.2
類模板的實(shí)例化與具體化 228
7.2.3
類模板的使用 230
7.2.4
類模板實(shí)例化時(shí)的異常處理 231
7.2.5
實(shí)例:MyVector模板類的設(shè)計(jì) 232
習(xí)題7 236
第8單元 STL編程 242
8.1
STL概述 242
8.1.1
容器 242
8.1.2
迭代器 244
8.1.3
容器的成員函數(shù) 247
8.1.4
STL算法 250
8.1.5
函數(shù)對(duì)象 253
8.1.6
STL標(biāo)準(zhǔn)頭文件 255
8.2 撲克游戲——vector容器應(yīng)用實(shí)例 256
8.2.1
vector容器的特點(diǎn) 256
8.2.2
撲克游戲?qū)ο竽P? 256
8.2.3
用vector容器對(duì)象poker存儲(chǔ)54張撲克牌 257
8.2.4
洗牌函數(shù)設(shè)計(jì) 260
8.2.5
整牌函數(shù)設(shè)計(jì) 263
8.2.6
發(fā)牌函數(shù)設(shè)計(jì) 264
8.2.7
vector操作小結(jié) 267
8.3
list容器及其應(yīng)用實(shí)例 268
8.3.1
構(gòu)建list對(duì)象及其迭代器 268
8.3.2
操作list對(duì)象 269
8.3.3
基于list容器的約瑟夫斯問(wèn)題求解 273
8.4
string 276
8.4.1
字符串對(duì)象的創(chuàng)建與特性描述 277
8.4.2
字符串對(duì)象的輸入/輸出 277
8.4.3
字符串的迭代器與字符操作 278
8.4.4
兩個(gè)字符串間的操作 282
8.5
stack容器 284
8.5.1
stack及其特點(diǎn) 284
8.5.2
stack的操作 284
8.5.3
應(yīng)用舉例:將一個(gè)十進(jìn)制整數(shù)轉(zhuǎn)換為K進(jìn)制數(shù) 285
8.6 關(guān)聯(lián)容器 287
8.6.1
用結(jié)構(gòu)體定義的pair類模板 287
8.6.2
set和multiset容器 289
8.6.3
map和multimap容器 293
8.7 知識(shí)鏈接 297
8.7.1
const_iterator 297
8.7.2
分配器 298
習(xí)題8 299
第4篇 C 深入編程
第9單元 C 實(shí)體訪問(wèn)探幽 305
9.1
C 實(shí)體的基本訪問(wèn)屬性 305
9.1.1
變量的生命期與C 存儲(chǔ)分配 305
9.1.2
標(biāo)識(shí)符的作用域與鏈接性 307
9.2
C 變量的存儲(chǔ)屬性 309
9.2.1
C 的extern關(guān)鍵字 309
9.2.2
C 的static關(guān)鍵字 313
9.3
C 名字空間域 320
9.3.1
名字沖突與名字空間 320
9.3.2
名字空間的使用 322
9.3.3
無(wú)名名字空間和全局名字空間 324
9.4
const指針與const引用 325
9.4.1
const修飾指針 325
9.4.2
const修飾引用 326
9.4.3
頂層const與底層const 327
9.5
C 11的左值引用與右值引用 329
9.5.1
C 11的左值引用與右值引用的基本概念 329
9.5.2
基于左值和右值概念的表達(dá)式分類 330
9.5.3
C 引用的擴(kuò)展及綁定規(guī)則 330
9.5.4
C 11的引用折疊與模板參數(shù)推導(dǎo) 333
9.6 智能指針 334
9.6.1
智能指針及其基本原理 334
9.6.2
auto_ptr智能指針 335
9.6.3
Boost庫(kù)的智能指針 337
習(xí)題9 339
第10單元 C 函數(shù)探幽 345
10.1
C 函數(shù)調(diào)用時(shí)的參數(shù)匹配規(guī)則 345
10.1.1
C 函數(shù)調(diào)用時(shí)的參數(shù)匹配規(guī)則 345
10.1.2
關(guān)于函數(shù)實(shí)參的計(jì)算順序 346
10.1.3
函數(shù)名重載 346
10.1.4
形參帶有默認(rèn)值的函數(shù) 349
10.1.5
參數(shù)數(shù)目可變的函數(shù) 350
10.2
參數(shù)類型 351
10.2.1
對(duì)象參數(shù) 351
10.2.2
指針參數(shù) 353
10.2.3
數(shù)組參數(shù) 354
10.2.4
左值引用參數(shù) 356
10.2.5
const保護(hù)函數(shù)參數(shù) 359
10.2.6
完美轉(zhuǎn)發(fā) 360
10.3
函數(shù)返回 363
10.3.1
函數(shù)返回的基本規(guī)則 363
10.3.2
函數(shù)返回指針 363
10.3.3
函數(shù)返回引用 364
10.3.4
const保護(hù)函數(shù)返回值 367
10.4
移動(dòng)語(yǔ)義 369
10.4.1
移動(dòng)語(yǔ)義的提出 369
10.4.2
移動(dòng)構(gòu)造函數(shù)與移動(dòng)賦值操作符 369
10.4.3
強(qiáng)制移動(dòng)與std::move() 371
10.5
Lambda表達(dá)式 372
10.5.1
簡(jiǎn)單的Lambda表達(dá)式 372
10.5.2
在方括號(hào)中加入函數(shù)對(duì)象參數(shù) 373
習(xí)題10 375
第11單元 C I/O流 379
11.1
流與C 流類 379
11.1.1
流與緩沖區(qū) 379
11.1.2
C 流類庫(kù) 380
11.1.3
ios類聲明 381
11.2
標(biāo)準(zhǔn)流對(duì)象與標(biāo)準(zhǔn)I/O流操作 383
11.2.1
C 標(biāo)準(zhǔn)流對(duì)象 383
11.2.2
標(biāo)準(zhǔn)輸入/輸出流操作 383
11.3
流的格式化 383
11.3.1
ios類的格式化成員函數(shù)和格式化標(biāo)志 384
11.3.2
格式化操作符 384
11.4
文件流 385
11.4.1
文件流的概念及其分類 385
11.4.2
文件操作過(guò)程 386
11.5
流的錯(cuò)誤狀態(tài)及其處理 389
11.5.1
流的出錯(cuò)狀態(tài) 389
11.5.2
測(cè)試與設(shè)置出錯(cuò)狀態(tài)位的ios類成員函數(shù) 390
習(xí)題11 390
附錄A C 保留字 392
A.1
C 關(guān)鍵字 392
A.2
C 替代標(biāo)記 392
A.3
C 庫(kù)保留名稱 393
A.4
C 特定字 393
附錄B C 運(yùn)算符的優(yōu)先級(jí)別和結(jié)合方向 394
附錄C C 標(biāo)準(zhǔn)庫(kù)與準(zhǔn)標(biāo)準(zhǔn)庫(kù) 396
C.1
C 標(biāo)準(zhǔn)庫(kù)頭文件 396
C.1.1
標(biāo)準(zhǔn)庫(kù)中與語(yǔ)言支持功能相關(guān)的頭文件 396
C.1.2
支持流輸入/輸出的頭文件 396
C.1.3
與診斷功能相關(guān)的頭文件 397
C.1.4
定義工具函數(shù)的頭文件 397
C.1.5
支持字符串處理的頭文件 397
C.1.6
定義容器類的模板的頭文件 397
C.1.7
支持迭代器的頭文件 398
C.1.8
有關(guān)算法的頭文件 398
C.1.9
有關(guān)數(shù)值操作的頭文件 398
C.1.10
有關(guān)本地化的頭文件 398
C.2
C Boost庫(kù)內(nèi)容 398
C.2.1
字符串和文本處理庫(kù) 399
C.2.2
容器庫(kù) 399
C.2.3
迭代器庫(kù) 399
C.2.4
算法庫(kù) 400
C.2.5
函數(shù)對(duì)象和高階編程庫(kù) 400
C.2.6
泛型編程庫(kù) 400
C.2.7
模板元編程 400
C.2.8
預(yù)處理元編程庫(kù) 401
C.2.9
并發(fā)編程庫(kù) 401
C.2.10
數(shù)學(xué)和數(shù)字庫(kù) 401
C.2.11
排錯(cuò)和測(cè)試庫(kù) 401
C.2.12
數(shù)據(jù)結(jié)構(gòu)庫(kù) 402
C.2.13
圖像處理庫(kù) 402
C.2.14
輸入/輸出庫(kù) 402
C.2.15
跨語(yǔ)言混合編程庫(kù) 402
C.2.16
內(nèi)存管理庫(kù) 402
C.2.17
解析庫(kù) 402
C.2.18
編程接口庫(kù) 402
C.2.19
綜合類庫(kù) 403
C.2.20
編譯器問(wèn)題的變通方案庫(kù) 403
參考文獻(xiàn) 404
·VII·
展開全部
新概念C++程序設(shè)計(jì)大學(xué)教程-(第3版) 作者簡(jiǎn)介
張基溫 研究和教學(xué)領(lǐng)域涉及計(jì)算機(jī)科學(xué)與技術(shù)、信息管理、信息經(jīng)濟(jì)學(xué)、電子政務(wù)與電子商務(wù)、服務(wù)科學(xué),發(fā)表論文百余篇,出版著作百余種;先后擔(dān)任名古屋大學(xué)訪問(wèn)學(xué)者,山西財(cái)經(jīng)大學(xué)、江南大學(xué)、華東政法大學(xué)、華南農(nóng)業(yè)大學(xué)珠江學(xué)院、常熟理工學(xué)院、福建工程學(xué)院、廣西職業(yè)技術(shù)學(xué)院、晉城學(xué)院等多所大學(xué)的專職、客座或兼職教授,北京大學(xué)博雅方略城市發(fā)展與信息化研究中心研究員,南京大學(xué)出版社總編顧問(wèn),太原高新技術(shù)區(qū)IT研究院實(shí)驗(yàn)室主任,山西省緊缺人才專家委員會(huì)副主任等職,中國(guó)信息經(jīng)濟(jì)學(xué)會(huì)常務(wù)理事,全國(guó)高等院校計(jì)算機(jī)基礎(chǔ)教育研究會(huì)常務(wù)理事兼課程建設(shè)委員會(huì)副主任,中國(guó)計(jì)算機(jī)學(xué)會(huì)教育專業(yè)委員會(huì)委員,NIT考試委員會(huì)委員,江蘇省計(jì)算機(jī)基礎(chǔ)教學(xué)指導(dǎo)委員會(huì)委員,山西省新世紀(jì)專家學(xué)者協(xié)會(huì)副會(huì)長(zhǎng);為清華大學(xué)出版社、電子工業(yè)出版社、中國(guó)水利水電出版社、南京大學(xué)出版社等出版社主編了信息管理與信息系統(tǒng)專業(yè)、計(jì)算機(jī)實(shí)驗(yàn)與實(shí)踐、大學(xué)生信息素養(yǎng)等多個(gè)系列教材,已經(jīng)發(fā)表論文百余篇,出版著作百余種。在程序設(shè)計(jì)教學(xué)領(lǐng)域,從20世紀(jì)80年代初就開始進(jìn)行有關(guān)研究和改革,嘗試將軟件工程方法和算法思想引入程序設(shè)計(jì),倡導(dǎo)“從語(yǔ)法體系向問(wèn)題體系轉(zhuǎn)變”、“程序設(shè)計(jì) = 思維訓(xùn)練 語(yǔ)言藝術(shù) 工程規(guī)范”,率先把設(shè)計(jì)模式及其有關(guān)原則引入到面向?qū)ο蟮某绦蛟O(shè)計(jì)教材中。