新闻资讯
看你所看,想你所想

完美C++教程(第1版)

完美C++教程(第1版)

完美C++教程(第1版)

《完美C++教程(第1版)》是2005年清华大学出版社出版的图书,作者是Walter Savitch。

基本介绍

  • 书名:完美C++教程(第1版)
  • 又名:C++教程
  • 作者:Walter Savitch
  • 原版名称:完美C++教程
  • ISBN:9787302111856
  • 类别:计算机编程
  • 定价:78元
  • 出版社:清华大学
  • 出版时间:2005-7-29
  • 装帧:平装
  • 开本:26cm

内容简介

完整和全面的可执行程式,以说明C++语言的特性。
全面介绍了标準模板库(STL)——它是理解C++语言的必需要素,因为它体现了这种语言丰富的功能性和多样性。

编辑推荐

《完美C++教程》是畅销书作者Walter Savitch撰写的一本关于C++的权威性教材。这本崭新的图书对C++程式语言提供了完整的、全面的和完美的介绍。
《完美C++教程》为那些希望掌握C++的经验丰富的程式设计师或者初学者都提供了全部必要的工具,特彆强调了这种语言在基本编程技巧方面的品质和複杂性。

目录

第1章C++基础1
1.1C++简介1
1.1.1C++语言的起源1
1.1.2C++与面向对象的程式设计2
1.1.3C++特点2
1.1.4C++术语2
1.1.5C++程式示例2
1.2变数、表达式及赋值语句4
1.2.1标识符4
1.2.2变数5
1.2.3赋值语句7
1.2.4更多赋值语句9
1.2.5赋值兼容性10
1.2.6文字常量11
1.2.7转义序列12
1.2.8名字常量13
1.2.9算术操作符和表达式14
1.2.10整数和浮点数除法15
1.2.11类型转换17
1.2.12自增和自减操作符19
1.3控制台输入/输出21
1.3.1使用cout输出22
1.3.2输出时的换行22
1.3.3格式化带小数点的数字23
1.3.4用cerr输出25
1.3.5用cin输入25
1.4程式的风格27
注释27
1.5库与名字空间28
1.5.1库及include命令28
1.5.2名字空间28
第2章流程控制34
2.1布尔表达式34
2.1.1创建布尔表达式34
2.1.2布尔表达式求值36
2.1.3优先权原则37
2.2分支机制41
2.2.1ifelse语句41
2.2.2複合语句43
2.2.3省略else45
2.2.4嵌套语句45
2.2.5多分支ifelse语句46
2.2.6switch语句47
2.2.7枚举类型50
2.2.8条件操作符50
2.3循环51
2.3.1while和dowhile语句51
2.3.2再谈增量、减量操作符54
2.3.3逗号操作符56
2.3.4for语句57
2.3.5break与continue语句63
2.3.6嵌套循环66
第3章函式基础72
3.1预定义的函式72
3.1.1返回值的预定义函式72
3.1.2预定义的void函式76
3.1.3随机数生成器78
3.2程式设计师定义的函式81
3.2.1定义返回值的函式81
3.2.2函式声明的替代形式84
3.2.3调用函式的函式84
3.2.4返回布尔值的函式87
3.2.5定义void函式88
3.2.6void函式中的return语句89
3.2.7前提条件和执行结果91
3.2.8main函式91
3.2.9递归函式92
3.3作用域规则93
3.3.1局部变数93
3.3.2过程抽象95
3.3.3全局常量与全局变数96
3.3.4语句块98
3.3.5嵌套作用域99
3.3.6for循环中声明的变数99
第4章参数与重载106
4.1参数106
4.1.1传值调用参数106
4.1.2引用调用参数初步108
4.1.3引用调用机制详解111
4.1.4常量引用参数113
4.1.5混合参数列表114
4.2重载与默认实参121
4.2.1重载简介121
4.2.2分辨重载的準则125
4.2.3默认实参128
4.3测试及调试函式130
4.3.1assert宏130
4.3.2占位程式和驱动程式131
第5章数组138
5.1数组简介138
5.1.1数组的声明和引用138
5.1.2记忆体中的数组142
5.1.3数组的初始化144
5.2函式中的数组146
5.2.1作为函式实参的索引变数146
5.2.2整个数组作为函式实参147
5.2.3const参数修饰词150
5.2.4返回一个数组的函式152
5.3用数组编程157
部分填充的数组157
5.4多维数组167
5.4.1多维数组基础167
5.4.2多维数组参数168
第6章结构和类182
6.1结构182
6.1.1结构类型184
6.1.2结构作为函式参数187
6.1.3结构的初始化190
6.2类193
6.2.1定义类和成员函式193
6.2.2封装198
6.2.3公有和私有成员199
6.2.4取值和赋值函式202
6.2.5结构和类206
第7章构造函式及其他工具211
7.1构造函式211
7.1.1构造函式的定义211
7.1.2构造函式的显式调用217
7.1.3类类型成员变数226
7.2其他工具229
7.2.1const参数修饰符229
7.2.2内联函式235
7.2.3静态成员236
7.2.4嵌套类和局部类定义240
7.3向量——标準模板库预览240
7.3.1向量基础241
7.3.2效率问题244
第8章操作符重载、友元和引用249
8.1基本操作符重载249
8.1.1重载基础249
8.1.2返回常量类型256
8.1.3重载一元操作符259
8.1.4作为成员函式的操作符重载260
8.1.5重载函式调用符()263
8.2友元函式和自动类型转换263
8.2.1构造函式的自动类型转换263
8.2.2友元函式265
8.2.3友元类269
8.3引用和其他操作符重载269
8.3.1引用270
8.3.2重载“<<”和“>>”271
8.3.3赋值操作符280
8.3.4重载自增和自减操作符280
8.3.5重载数组操作符[]283
8.3.6基于左值和右值的重载285
第9章字元串291
9.1数组类型的字元串291
9.1.1C字元串值和C字元串变数291
9.1.2库中的其他函式296
9.1.3C字元串的输入和输出299
9.2字元操作工具301
9.2.1字元输入/输出301
9.2.2成员函式get和put302
9.2.3成员函式putback、peek和ignore307
9.2.4字元操作函式309
9.3标準string类312
9.3.1标準类string简介312
9.3.2string类的输入/输出314
9.3.3使用string类进行字元串处理319
9.3.4string类对象和C字元串的相互转换326
第10章指针和动态数组334
10.1指针334
10.1.1指针变数335
10.1.2记忆体管理基础341
10.1.3动态变数和自动变数344
10.1.4指针的套用348
10.2动态数组348
10.2.1数组变数和指针变数348
10.2.2创建和使用动态数组350
10.2.3指针运算355
10.2.4多维动态数组356
10.3类、指针和动态数组358
10.3.1->操作符358
10.3.2this指针359
10.3.3重载赋值操作符360
10.3.4析构函式369
10.3.5複製构造函式370
第11章分散编译和名字空间378
11.1分散编译378
11.1.1封装回顾378
11.1.2头档案和实现档案379
11.1.3使用#ifndef388
11.2名字空间391
11.2.1名字空间和using命令391
11.2.2创建一个名字空间393
11.2.3using声明396
11.2.4限定名字397
11.2.5未命名的名字空间401
11.2.6嵌套名字空间408
第12章流和档案I/O操作415
12.1I/O流415
12.1.1档案I/O416
12.1.2向档案中添加内容419
12.1.3字元I/O425
12.1.4档案末尾检查425
12.2流I/O的工具429
12.2.1档案名称作为输入429
12.2.2使用流函式对输出格式化430
12.2.3操作运算元(Manipulators)433
12.2.4保存设定的标记434
12.2.5其他的输出流成员函式434
12.3流的层次:继承的简要介绍441
12.4随机档案存取446
第13章递归455
13.1递归void函式455
13.1.1一个递归调用的跟蹤458
13.1.2递归的进一步认识460
13.1.3递归调用的栈463
13.1.4递归与叠代的比较464
13.2有返回值的递归函式466
有返回值的递归函式的一般形式466
13.3按递归的方式思考问题470
13.3.1递归设计技术470
13.3.2二分查找472
13.3.3编码474
13.3.4检查递归的正确性476
13.3.5效率477
第14章继承486
14.1继承基础486
14.1.1派生类486
14.1.2派生类的构造函式495
14.1.3protected限定词498
14.1.4成员函式的重定义501
14.1.5重定义与重载502
14.1.6访问重定义函式的基类版本503
14.1.7不可继承的函式504
14.2使用继承进行编程505
14.2.1派生类中的赋值操作符和複製构造函式505
14.2.2派生类的析构函式506
14.2.3保护继承和私有继承518
14.2.4多继承519
第15章多态与虚函式524
15.1虚函式基础524
15.1.1后绑定524
15.1.2C++中的虚函式525
15.1.3抽象类和纯虚函式532
15.2指针和虚函式535
15.2.1虚函式和扩展类型兼容性535
15.2.2向下转换和向上转换541
15.2.3C++是如何实现虚函式543
第16章模板546
16.1函式模板546
定义函式模板的语法547
16.2类模板558
16.2.1类模板的语法558
16.2.2C++中的模板类vector和basic_stirng568
16.3模板和继承568
第17章链式数据结构579
17.1节点和鍊表579
17.1.1节点580
17.1.2鍊表584
17.1.3向鍊表头插入一个节点585
17.1.4向鍊表中插入或移除节点589
17.1.5搜寻鍊表592
17.2鍊表的套用599
17.3叠代器611
17.3.1指针作为叠代器612
17.3.2叠代器类612
17.4树619
树的性质619
第18章异常处理636
18.1异常处理基础636
18.1.1异常处理的一个样例637
18.1.2自定义异常类644
18.1.3多重抛出和捕获646
18.1.4在函式中抛出异常649
18.1.5异常说明651
182异常处理的编程技术654
18.2.1抛出异常的时机654
18.2.2异常类的层次结构656
18.2.3测试可用记忆体657
18.2.4再次抛出异常657
第19章标準模板库660
19.1叠代器661
19.1.1叠代器基础661
19.1.2叠代器的种类665
19.1.3常量和可变叠代器669
19.1.4反向叠代器670
19.1.5其他几种叠代器672
19.2容器673
19.2.1连续容器673
19.2.2容器适配器栈和伫列678
19.2.3关联容器集合和映射681
19.2.4效率685
19.3泛型算法685
19.3.1运行时间和BigO记法686
19.3.2容器访问运行时间689
19.3.3不改变序列的算法690
19.3.4改变序列的算法694
19.3.5集合算法695
19.3.6排序算法697
第20章模式和UML703
20.1模式703
20.1.1适配器模式704
20.1.2模型视图控制器模式704
20.1.3排序模式的效率710
20.1.4模式形式体系712
20.2UML713
20.2.1UML的历史713
20.2.2UML的类图表714
20.2.3类的相互作用714
附录1C++关键字718
附录2操作符优先权719
附录3ASCII字元集721
附录4一些库函式722
附录5旧的和新的头档案728

相关推荐

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com