在线客服
C++程序设计:原理与实践(进阶篇)图书
人气:77

C++程序设计:原理与实践(进阶篇)

本书是进阶篇。本书通俗易懂、实例丰富,可作为大学计算机、电子工程、信息科学等相关专业的教材,也可供相关专业人员参考。
  • 所属分类:图书 >计算机/网络>程序设计>C C++ C# VC VC++  
  • 作者:[美] [本贾尼·斯特劳斯特鲁普] ([Bjarne] [Stroustrup])
  • 产品参数:
  • 丛书名:计算机科学丛书
  • 国际刊号:9787111562528
  • 出版社:机械工业出版社
  • 出版时间:2017-04
  • 印刷时间:2017-04-01
  • 版次:1
  • 开本:16开
  • 页数:--
  • 纸张:胶版纸
  • 包装:平装-胶订
  • 套装:

内容简介

C 之父BjarneStroustrup经典著作《C 程序设计:原理与实践(原书第2版)》基于新的C 11和C 14,广泛地介绍了程序设计的基本概念和技术,包括类型系统、算术运算、控制结构、错误处理等;介绍了从键盘和文件获取数值和文本数据的方法以及以图形化方式表示数值数据、文本和几何图形;介绍了C 标准库中的容器(如向量、列表、映射)和算法(如排序、查找和内积)的设计和使用。同时还对C 思想和历史进行了详细的讨论,很好地拓宽了读者的视野。为方便读者循序渐进学习,加上篇幅所限,《C 程序设计:原理与实践(原书第2版)》分为基础篇和进阶篇两册出版,基础篇包括第0~11章、第17~19章和附录A、C,进阶篇包括第12~16章、第20~27章和附录B、D、E。本书是进阶篇。本书通俗易懂、实例丰富,可作为大学计算机、电子工程、信息科学等相关专业的教材,也可供相关专业人员参考。

作者简介

作者简介Programming: Principles and Practice Using C , Second Edition你也许有理由问:“是一些什么人想要教我程序设计?”那么,下面给出作者的一些生平信息。Bjarne Stroustrup和Lawrence“Pete”Petersen合著了本书。Stroustrup还设计并讲授了面向大学一年级学生的课程,这门课程是与本书同步发展起来的,以本书的初稿作为教材。

Bjarne Stroustrup我是C 语言的设计者和初的实现者。在过去大约40年间,我使用C 和许多其他程序设计语言进行过各种各样的编程工作。我喜欢那些用在富有挑战性的应用(如机器人控制、绘图、游戏、文本分析以及网络应用)中的优美而又高效的代码。我教过能力和兴趣各异的人设计、编程和C 语言。我是ISO标准组织C 委员会的创建者,现在是该委员会语言演化工作组的主席。

这是我及时本入门性的书。我编著的其他书籍如《The C Pro-gramming Language》和《The Design and Evolution of C 》都是面向有经验的程序员的。

我生于丹麦奥尔胡斯一个蓝领(工人阶级)家庭,在家乡的大学获得了数学与计算机科学硕士学位。我的计算机科学博士学位是在英国剑桥大学获得的。我为AT&T工作了大约25年,初在著名的贝尔实验室的计算机科学研究中心——Unix、C、C 及其他很多东西的发明地,后来在AT&T实验室研究中心。

我现在是美国国家工程院的院士,ACM会士(Fellow)和IEEE会士。我获得了2005年度Sigma Xi(科学研究协会)的科学成就William Procter奖,我是首位获得此奖的计算机科学家。2010年,我获得了丹麦奥尔胡斯大学古老也富声望的奖项Rigmor og Carl Holst-Knudsens Videnskapspris,该奖项颁发给为科学做出贡献的与该校有关的人士。2013年,我被位于俄罗斯圣彼得堡的信息技术、力学和光学(ITMO)国立研究大学授予计算机科学荣誉博士学位。

至于工作之外的生活,我已婚,有两个孩子,一个是医学博士,另一个在进行博士后研究。我喜欢阅读(包括历史、科幻、犯罪及时事等各类书籍),还喜欢各种音乐(包括古典音乐、摇滚、蓝调和乡村音乐)。和朋友一起享受美食是我生活中必不可少的一部分,我还喜欢参观世界各地有趣的地方。为了能够享受美食,我还坚持跑步。

关于我的更多信息,请见我的网站www.stroustrup.com。特别是,你可以在那里找到我名字的正确发音。

Lawrence“Pete”Petersen2006年年末,Pete如此介绍他自己:“我是一名教师。近20年来,我一直在德州农工大学讲授程序设计语言。我已5次被学生选为教师,并于1996年被工程学院的校友会选为杰出教师。我是Wakonse教师计划的委员和教师发展研究院院士。

作为一名陆军军官的儿子,我的童年是在不断迁移中度过的。在华盛顿大学获得哲学学位后,我作为野战炮兵官员和操作测试研究分析员在军队服役了22年。1971年至1973年期间,我在俄克拉荷马希尔堡讲授野战炮兵军官的高级课程。1979年,我帮助创建了测试军官的训练课程,并在1978年至1981年及1985年至1989年期间在跨越美国的九个不同地方以首席教官的身份讲授这门课程。

1991年我组建了一个小型的软件公司,生产供大学院系使用的管理软件,直至1999年。我的兴趣在于讲授、设计和实现供人们使用的实用软件。我在乔治亚理工大学获得了工业管理学硕士学位,在德州农工大学获得了教育管理学硕士学位。我还从NTS获得了微型计算机硕士学位。我在德州农工大学获得了信息与运营管理学博士学位。

我和我的妻子Barbara都生于德州的布莱恩。我们喜欢旅行、园艺和招待朋友;我们花尽可能多的时间陪我们的儿子和他们的家庭,特别是我们的孙子和孙女Angelina、Carlos、Tess、Avery、Nicholas和Jordan。”

令人悲伤的是,Pete于2007年死于肺癌。如果没有他,这门课程不会取得成功。

目录

目 录

Programming: Principles and Practice Using C , Second Edition

出版者的话

译者序

前言

引言

作者简介

第15章 容器和迭代器 1

15.1 存储和处理数据 1

15.1.1 处理数据 1

15.1.2 泛化代码 2

15.2 STL理念 4

15.3 序列和迭代器 7

15.3.1 回到实例 8

15.4 链表 9

15.4.1 链表操作 11

15.4.2 遍历 12

15.5 再次泛化vector 13

15.5.1 遍历容器 15

15.5.2 auto 15

15.6 实例:一个简单的文本编辑器 16

15.6.1 处理行 18

15.6.2 遍历 18

15.7 vector、list和string 21

15.7.1 insert和erase 22

15.8 调整vector类达到STL版本的功能 24

15.9 调整内置数组达到STL版本的功能 26

15.10 容器概览 27

15.10.1 迭代器类别 28

简单练习 29

思考题 30

术语 30

习题 31

附言 32

第16章 算法和映射 33

16.1 标准库算法 33

16.2 最简单的算法f?ind() 34

16.2.1 一些一般的应用 35

16.3 通用搜索算法f?ind_if() 36

16.4 函数对象 38

16.4.1 函数对象的抽象视图 39

16.4.2 类成员上的断言 39

16.4.3 lambda表达式 40

16.5 数值算法 41

16.5.1 累积 42

16.5.2 泛化accumulate() 43

16.5.3 内积 44

16.5.4 泛化inner_product() 45

16.6 关联容器 45

16.6.1 map 46

16.6.2 map概览 47

16.6.3 另一个map实例 50

16.6.4 unordered_map 51

16.6.5 set 53

16.7 拷贝 54

16.7.1 基本拷贝算法 55

16.7.2 流迭代器 55

16.7.3 使用set保持顺序 57

16.7.4 copy_if 57

16.8 排序和搜索 58

16.9 容器算法 60

简单练习 60

思考题 61

术语 62

习题 62

附言 63

第17章 一个显示模型 64

17.1 为什么要使用图形 64

17.2 一个基本显示模型 65

17.3 及时个例子 66

17.4 使用GUI库 68

17.5 坐标系 69

17.6 Shape 70

17.7 使用Shape类 70

17.7.1 图形头文件和主函数 70

17.7.2 一个几乎空白的窗口 71

17.7.3 坐标轴 73

17.7.4 绘制函数图 74

17.7.5 Polygon 75

17.7.6 Rectangle 76

17.7.7 填充 78

17.7.8 Text 78

17.7.9 Image 80

17.7.10 更多未讨论的内容 81

17.8 让图形程序运行起来 81

17.8.1 源文件 82

简单练习 83

思考题 83

术语 83

习题 84

附言 84

第18章 图形类 85

18.1 图形类概览 85

18.2 Point和Line 87

18.3 Lines 88

18.4 Color 91

18.5 Line_style 93

18.6 Open_polyline 95

18.7 Closed_polyline 96

18.8 Polygon 97

18.9 Rectangle 99

18.10 管理未命名对象 102

18.11 Text 104

18.12 Circle 105

18.13 Ellipse 107

18.14 Marked_polyline 108

18.15 Marks 110

18.16 Mark 111

18.17 Image 112

简单练习 114

思考题 115

术语 115

习题 116

附言 116

第19章 设计图形类 117

19.1 设计原则 117

19.1.1 类型 117

19.1.2 操作 118

19.1.3 命名 119

19.1.4 可变性 120

19.2 Shape 121

19.2.1 一个抽象类 122

19.2.2 访问控制 123

19.2.3 绘制形状 125

19.2.4 拷贝和可变性 127

19.3 基类和派生类 128

19.3.1 对象布局 130

19.3.2 类的派生和虚函数的定义 131

19.3.3 覆盖 131

19.3.4 访问 133

19.3.5 纯虚函数 134

19.4 面向对象程序设计的好处 135

简单练习 136

思考题 136

术语 137

习题 137

附言 138

第20章 绘制函数图和数据图 139

20.1 简介 139

20.2 绘制简单函数图 139

20.3 Function 143

20.3.1 默认参数 143

20.3.2 更多例子 144

20.3.3 lambda表达式 146

20.4 Axis 146

20.5 近似 148

20.6 绘制数据图 152

20.6.1 读取文件 153

20.6.2 一般布局 154

20.6.3 数据比例 155

20.6.4 构造数据图 156

简单练习 158

思考题 159

术语 159

习题 159

附言 160

第21章 图形用户界面 161

21.1 用户界面的选择 161

21.2 “Next”按钮 162

21.3 一个简单的窗口 163

21.3.1 回调函数 164

21.3.2 等待循环 166

21.3.3 lambda表达式作为回调函数 166

21.4 Button和其他Widget 167

21.4.1 Widget 167

21.4.2 Button 168

21.4.3 In_box和Out_box 169

21.4.4 Menu 170

21.5 一个实例 170

21.6 控制流反转 173

21.7 添加菜单 174

21.8 调试GUI代码 178

简单练习 179

思考题 179

术语 180

习题 180

附言 181

第22章 理念和历史 182

22.1 历史、理念和专业水平 182

22.1.1 程序设计语言的目标和哲学 182

22.1.2 编程理念 183

22.1.3 风格/范型 188

22.2 程序设计语言历史概览 190

22.2.1 最早的程序设计语言 191

22.2.2 现代程序设计语言的起源 193

22.2.3 Algol家族 197

22.2.4 Simula 203

22.2.5 C 204

22.2.6 C 207

22.2.7 今天 209

22.2.8 参考资料 210

思考题 211

网友评论(不代表本站观点)

来自g***h(**的评论:

ok ok

2017-04-30 20:46:06
来自a***a(**的评论:

质量不错,好评!

2017-05-02 16:01:09
来自匿名用**的评论:

这本书慢慢看

2017-05-28 19:14:14
来自无昵称**的评论:

包装有点破了书还行很好

2017-09-18 17:36:58
来自月***(**的评论:

很赞,书本包装完美

2017-10-31 22:01:39
来自无昵称**的评论:

一本好书,需要慢慢品味。

2017-11-04 22:41:15
来自skyivai**的评论:

与《C++程序设计:原理与实践(基础篇)(原书第2版)》是一套的。

2017-08-20 21:40:12

免责声明

更多相关图书