C++大学教程

C++大学教程 pdf epub mobi txt 电子书 下载 2026

出版者:电子工业出版社
作者:张引
出品人:
页数:809
译者:张引
出版时间:2010-1
价格:89.00元
装帧:Paperback
isbn号码:9787121118494
丛书系列:
图书标签:
  • C++
  • programming
  • 计算机
  • 编程
  • C/C++
  • 教材
  • it
  • c++
  • C++
  • 编程
  • 大学教材
  • 计算机科学
  • 数据结构
  • 算法
  • 面向对象编程
  • C++语言
  • 程序设计
  • 教学
  • 入门
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

《国外计算机科学教材系列:C++大学教程(第7版)》是一本讲解C++编程的优秀教材,全面介绍了面向对象编程的原理和方法,详细分析了与C++编程有关的技术,具体包括类与对象、控制语句、函数与递归、数组、指针、运算符重载、继承、多态、模板、流输入/输出、异常处理、文件处理、搜索与排序、数据结构、标准模板库等内容,《国外计算机科学教材系列:C++大学教程(第7版)》的同步学习网站上还包含了更多的扩展内容。全书以“活代码”方式详细分析了每个知识要点,是初学者和中高级程序员学习C++编程的理想用书。

作者简介

目录信息

第1章 计算机、Internet和万维网简介 1
1.1 简介 2
1.2 计算机:硬件和软件 3
1.3 计算机的组成 3
1.4 个人计算、分布式计算和客户/服务器计算 4
1.5 Internet和万维网 4
1.6 Web 2.0 4
1.7 机器语言、汇编语言和高级语言 5
1.8 C和C++的历史 6
1.9 C++标准库 7
1.10 Java的历史 8
1.11 FORTRAN、COBOL、Pascal和Ada 8
1.12 BASIC、Visual Basic、Visual C++、C#和.NET 9
1.13 主要的软件趋势:对象技术 9
1.14 典型的C++开发环境 10
1.15 关于C++和本书的几点说明 12
1.16 试运行一个C++应用程序 12
1.17 软件技术 17
1.18 C++的未来:开源Boost库、TR1和C++0x 17
1.19 软件工程实例研究:对象技术和UML介绍 18
1.20 本章小结 21
1.21 Web资源 22
第2章 C++编程入门 30
2.1 简介 30
2.2 第一个C++程序:打印一行文本 31
2.3 修改第一个C++程序 33
2.4 另一个C++程序:整数相加 34
2.5 内存的概念 38
2.6 算术运算 38
2.7 判断:相等运算符和关系运算符 41
2.8 本章小结 44
第3章 类和对象介绍 53
3.1 简介 53
3.2 类、对象、成员函数和数据成员 54
3.3 定义具有成员函数的类 55
3.4 定义具有形参的成员函数 57
3.5 数据成员、set函数和get函数 60
3.6 使用构造函数初始化对象 65
3.7 一个类对应一个独立文件的可复用性 67
3.8 接口与实现的分离 70
3.9 用set函数确认数据的有效性 74
3.10 本章小结 78
第4章 控制语句(第I部分) 84
4.1 简介 84
4.2 算法 85
4.3 伪代码 85
4.4 控制结构 86
4.5 if选择语句 89
4.6 if...else双路选择语句 90
4.7 while循环语句 94
4.8 算法详述:计数器控制的循环 95
4.9 算法详述:标记控制的循环 100
4.10 算法详述:嵌套的控制语句 107
4.11 赋值运算符 111
4.12 自增和自减运算符 112
4.13 本章小结 114
第5章 控制语句(第II部分) 127
5.1 简介 127
5.2 计数器控制的循环的要素 128
5.3 for循环语句 129
5.4 使用for语句的例子 132
5.5 do...while循环语句 136
5.6 switch多路选择语句 137
5.7 break和continue语句 144
5.8 逻辑运算符 145
5.9 ==运算符与=运算符的混淆问题 148
5.10 结构化编程小结 149
5.11 本章小结 153
第6章 函数和递归入门 162
6.1 简介 163
6.2 C++的程序组件 163
6.3 数学库函数 164
6.4 多形参函数定义 165
6.5 函数原型和实参类型的强制转换 168
6.6 C++标准库头文件 170
6.7 实例研究:随机数生成 171
6.8 实例研究:博彩游戏和enum简介 175
6.9 存储类别 178
6.10 作用域规则 180
6.11 函数调用堆栈和活动记录 182
6.12 无参函数 185
6.13 内联函数 186
6.14 引用和引用形参 187
6.15 默认实参 190
6.16 一元作用域分辨运算符 191
6.17 函数重载 192
6.18 函数模板 194
6.19 递归 196
6.20 递归应用示例:Fibonacci数列 199
6.21 递归与迭代 201
6.22 本章小结 203
第7章 数组与vector 220
7.1 简介 221
7.2 数组 221
7.3 声明数组 222
7.4 使用数组的范例 223
7.5 将数组传递给函数 233
7.6 实例研究:利用数组存放成绩的GradeBook类 236
7.7 采用线性查找法查找数组 240
7.8 采用插值排序法排序数组 241
7.9 多维数组 243
7.10 实例研究:利用二维数组的GradeBook类 245
7.11 C++标准库类模板vector介绍 250
7.12 本章小结 254
第8章 指针 268
8.1 简介 269
8.2 指针变量的声明和初始化 269
8.3 指针运算符 270
8.4 使用指针的按引用传递方式 272
8.5 使用const修饰指针 275
8.6 使用按引用传递方式实现的选择排序 278
8.7 sizeof运算符 281
8.8 指针表达式和指针算术运算 283
8.9 指针和数组之间的联系 285
8.10 基于指针的字符串处理 287
8.11 指针数组 289
8.12 函数指针 289
8.13 本章小结 292
第9章 类的深入剖析(第I部分) 307
9.1 简介 307
9.2 Time类实例研究 308
9.3 类的作用域和类成员的访问 313
9.4 接口与实现的分离 314
9.5 访问函数和工具函数 315
9.6 Time类实例研究:默认实参的构造函数 317
9.7 析构函数 321
9.8 何时调用构造函数和析构函数 321
9.9 Time类实例研究:微妙的陷阱—返回private数据成员引用 324
9.10 默认的逐个成员赋值 326
9.11 本章小结 327
第10章 类的深入剖析(第II部分) 333
10.1 简介 333
10.2 const对象和const成员函数 334
10.3 组成:对象作为类的成员 340
10.4 friend函数和friend类 345
10.5 使用this指针 347
10.6 static类成员 351
10.7 数据抽象和信息隐藏 354
10.8 本章小结 356
第11章 运算符重载 361
11.1 简介 362
11.2 运算符重载的基础知识 362
11.3 运算符重载的限制 363
11.4 作为类成员函数和全局函数的运算符函数之比较 364
11.5 重载流插入运算符和流提取运算符 365
11.6 重载一元运算符 368
11.7 重载二元运算符 368
11.8 动态内存管理 369
11.9 实例研究:Array类 370
11.10 类型转换 379
11.11 构建String类 380
11.12 重载++和--运算符 381
11.13 实例研究:Date类 382
11.14 标准库中的string类 386
11.15 explicit构造函数 388
11.16 代理类 391
11.17 本章小结 393
第12章 面向对象编程:继承 403
12.1 简介 404
12.2 基类和派生类 405
12.3 protected成员 406
12.4 基类和派生类之间的关系 407
12.5 派生类中的构造函数和析构函数 428
12.6 public、protected和private继承 434
12.7 关于继承的软件工程 435
12.8 本章小结 436
第13章 面向对象编程:多态性 440
13.1 简介 441
13.2 多态性实例 442
13.3 类继承层次中对象之间的关系 443
13.4 类型域和switch语句 455
13.5 抽象类和纯virtual函数 456
13.6 实例研究:应用多态性的工资发放系统 457
13.7 (选读)多态性、virtual函数和动态绑定的底层实现机制 470
13.8 实例研究:应用向下强制类型转换dynamic_cast、typeid和type_info并使用多态性和运行时类型信息的工资发放系统 473
13.9 virtual析构函数 475
13.10 本章小结 476
第14章 模板 481
14.1 简介 481
14.2 函数模板 482
14.3 重载函数模板 484
14.4 类模板 485
14.5 类模板的非类型参数和默认类型 489
14.6 模板和继承的注意事项 490
14.7 模板和友元的注意事项 491
14.8 模板和静态成员的注意事项 492
14.9 本章小结 492
第 15章 输入/输出流 496
15.1 简介 497
15.2 流 497
15.3 输出流 500
15.4 输入流 501
15.5 使用read,write和gcount的非格式化的I/O 504
15.6 流操纵符简介 505
15.7 流的格式状态和流操纵符 509
15.8 流的错误状态 515
15.9 将输出流连接到输入流 517
15.10 本章小结 517
第16章 异常处理 526
16.1 简介 527
16.2 异常处理总览 527
16.3 实例:处理除数为0的异常 528
16.4 什么时候使用异常处理 532
16.5 重新抛出异常 533
16.6 异常规格 534
16.7 处理意料之外的异常 534
16.8 堆栈展开 535
16.9 构造函数、析构函数和异常处理 536
16.10 异常和继承 537
16.11 处理new失败 537
16.12 类auto_ptr和动态内存分配 539
16.13 标准库异常类层次 541
16.14 其他异常处理技术 542
16.15 本章小结 542
第17章 文件处理 548
17.1 简介 548
17.2 数据层次 549
17.3 文件和流 550
17.4 创建顺序文件 551
17.5 从顺序文件读取数据 554
17.6 更新顺序文件 558
17.7 随机存取文件 558
17.8 创建随机存取文件 559
17.9 向随机存取文件随机写入数据 562
17.10 从随机存取文件顺序读取数据 564
17.11 实例研究:事务处理程序 565
17.12 对象序列化概述 570
17.13 本章小结 570
第18章 string类和字符串流处理 580
18.1 简介 581
18.2 字符串的赋值和连接 582
18.3 字符串的比较 583
18.4 子串 585
18.5 交换字符串 585
18.6 string类的特征 586
18.7 查找字符串中的子串和字符 588
18.8 在字符串中替换字符 589
18.9 在字符串中插入字符 591
18.10 转换成C风格的基于指针的char *字符串 591
18.11 迭代器 592
18.12 字符串流处理 593
18.13 本章小结 595
第19章 搜索和排序 602
19.1 简介 603
19.2 搜索算法 603
19.3 排序算法 608
19.4 本章小结 614
第 20章 数据结构 619
20.1 简介 619
20.2 自引用类 620
20.3 动态内存分配和数据结构 621
20.4 链表 621
20.5 堆栈 632
20.6 队列 635
20.7 树 638
20.8 本章小结 644
第21章 位、字符、C字符串和结构体 653
21.1 简介 654
21.2 结构体的定义 654
21.3 初始化结构体 656
21.4 在函数中使用结构体 656
21.5 typedef 656
21.6 示例:洗牌与发牌模拟 656
21.7 位运算符 658
21.8 位域 665
21.9 字符处理库 668
21.10 基于指针的字符串处理函数 671
21.11 基于指针的字符串转换函数 677
21.12 基于指针的字符串处理库中的搜索函数 680
21.13 基于指针的字符串处理库中的内存函数 683
21.14 本章小结 686
第22章 标准模板库 700
22.1 标准模板库(STL)简介 701
22.2 序列容器 709
22.3 关联容器 719
22.4 容器适配器 725
22.5 算法 728
22.6 bitset类 750
22.7 函数对象 752
22.8 本章小结 755
22.9 Web上的STL资源 755
附录A 运算符的优先级与结合律 765
附录B ASCII字符集 767
附录C 基本数据类型 768
附录D 计数系统 769
附录E 预处理器 779
索引 790
· · · · · · (收起)

读后感

评分

感觉此书废话太多,并且删减太严重,知识不全,最好还是买《 C++ How to Program 》

评分

本人有一定C#基础,由于工作需要学习C++,在看过各大网上书店对中文翻译的吐槽后,决定直接看原版,我看得是此书的第八版,看过之后再次感叹,为什么外国人能把编程的技术问题讲得这么恰到好处,循序渐进,详略得当,原谅我全是褒义词。最关键的是其中的英语单词和语法都很简单...  

评分

感觉此书废话太多,并且删减太严重,知识不全,最好还是买《 C++ How to Program 》

评分

这本写得非常详细, 经常会发现同一句话会多次出现在文本中(有时确实会感觉比较烦), 我想它比较适合初学者来读. 作为初学者, 正文内容我也是一页一页地读下来, 蛮有收获的. 并且书中不时穿插着一些有益的提示.  

评分

本人有一定C#基础,由于工作需要学习C++,在看过各大网上书店对中文翻译的吐槽后,决定直接看原版,我看得是此书的第八版,看过之后再次感叹,为什么外国人能把编程的技术问题讲得这么恰到好处,循序渐进,详略得当,原谅我全是褒义词。最关键的是其中的英语单词和语法都很简单...  

用户评价

评分

这本书的结构逻辑安排堪称教科书级别的典范。它并没有按照字母顺序介绍C++的所有特性,而是采用了一种由浅入深、由概念到实践的螺旋上升模式。最开始是基础语法和控制流,然后稳健地过渡到函数和作用域。接下来,它巧妙地引入了对象和类的概念,而不是像某些教材那样,先讲完所有基础语法再突兀地转向OOP。这种渐进式的学习路径,让我的心智负担减轻了不少。我发现,在学习到“模板”这个复杂概念之前,我已经对泛型编程的思想有了初步的感知,这得益于前面章节中对函数重载和函数模板的铺垫。另外,书中对“值语义”和“引用语义”的讨论非常深入,这对于理解C++中参数传递的效率和安全性至关重要。作者通过对比传递指针、传递引用以及值拷贝的性能差异,非常直观地展示了C++在性能优化上的精妙之处。这种注重实践效率和理论深度的结合,让这本书的价值远超一般的入门读物。

评分

我尝试过很多声称“全面”的C++书籍,但往往在处理多线程和并发编程这部分时就显得力不从心,要么一带而过,要么内容陈旧。然而,这本《C++大学教程》在这方面展现了其与时俱进的特点。它不仅详细讲解了C++11/14/17引入的 `std::thread` 库,还深入探讨了互斥量(Mutex)、条件变量(Condition Variable)以及原子操作(Atomic Operations)的正确使用场景。作者非常强调“数据竞争”的危害,并且用实例展示了如果不加正确同步机制,程序会产生多么不可预测的结果。最让我印象深刻的是,它对并发编程中的“死锁”和“活锁”等经典问题的剖析,并提供了规避的最佳实践。这部分内容对于任何想要编写现代高性能应用软件的开发者来说,都是必不可少的“护身符”。这本书没有将并发编程视为一个可选项,而是将其提升到了核心技术的高度来对待,这体现了作者对当前软件开发趋势的深刻洞察力。

评分

这本《C++大学教程》简直是为我这种想啃硬骨头的初学者量身定做的入门砖!我得说,作者在讲解基础概念时,那种抽丝剥茧的耐心,简直能让对编程一窍不通的人也能看到曙光。比如,对于指针这个让无数人闻风丧胆的概念,书里用了好几页篇幅,配上了大量生动的类比和图示,我感觉自己仿佛真的“触摸”到了内存地址。它不是那种只抛出代码让你自己琢磨的冷冰冰的教材,而是像一个经验丰富的老教授,一步一步引导你构建起完整的知识体系。我特别欣赏它在介绍面向对象编程(OOP)思想时,没有急于求成,而是先花了足够的时间打磨类(Class)和对象(Object)的本质区别,以及封装、继承、多态这三大支柱是如何互相支撑的。读完前几章,我已经能清晰地在脑子里勾勒出一个程序的数据结构蓝图了。而且,书中对C++标准库(STL)的介绍也相当到位,讲解了容器、迭代器和算法的基本工作原理,而不是简单地告诉你“用哪个函数就行了”,这对于想写出高效、健壮代码的人来说,是无价的财富。总之,对于想系统学习C++核心机制的读者来说,这本书的扎实程度足以让人信心倍增。

评分

说实话,我拿到这本《C++大学教程》的时候,心里是有点打鼓的,毕竟“大学教程”听起来就意味着枯燥和厚重。但出乎意料的是,它的排版设计非常人性化,使用了大量的彩色插图和关键概念的醒目提示框,这极大地减轻了长时间阅读带来的视觉疲劳。更重要的是,作者在叙述风格上,展现出一种成熟而又不失活泼的语调。他仿佛是一位正在和你探讨编程哲学的朋友,而不是高高在上的权威。比如,在讲解构造函数和析构函数重载的复杂场景时,他会插入一些关于“对象生命周期管理艺术”的小插曲,让原本冰冷的语法规则变得有温度、有意义。此外,这本书对编译过程的描述也达到了一个令人印象深刻的细节程度。它解释了预处理、编译、汇编和链接这些步骤是如何协同工作的,这对于调试那些跨文件引用错误或者链接器找不到符号的“疑难杂症”时,简直是救星。它不仅教你如何编程,更教你如何理解程序是如何被机器执行的整个生命周期。

评分

我手里其实有好几本C++的书,但大多要么是针对特定领域的深度挖掘,要么就是过于侧重现代C++的语法糖而忽略了底层逻辑。这本书的妙处就在于它找到了一个完美的平衡点。它没有回避那些晦涩难懂的部分,比如模板元编程的入门,或者C++内存模型的讨论,但处理方式却异常清爽利落。作者似乎深谙大学课堂的节奏,每一章的理论讲解后,都会立刻跟进几组精心设计的、难度适中的练习题,这些习题往往能巧妙地检验你是否真正理解了刚才学到的概念,而不是死记硬背。我尤其赞赏它在讲解异常处理和资源管理(RAII)时的深度。它不仅仅是教你如何写 `try-catch` 块,而是深入剖析了为什么在C++这种需要手动管理资源的语言中,RAII是保障程序稳定性的基石。读完这些章节,我明显感觉到自己写代码的“安全感”提升了好几个档次,知道如何避免常见的内存泄漏和资源悬挂问题。对于想要进入系统级编程或高性能计算领域的读者来说,这本书提供的底层视角是极其宝贵的。

评分

正在读,比起C++ Primer的简约,这本书实例丰富,讲得很明白,很多之前模棱两可的概念读过之后都有了进一步了解,是我的C++入门书!

评分

还算靠谱

评分

看了第一章,感觉很细致。作为入门的书必选,写的非常好

评分

半个字典。有这个劲头还是去看primer吧

评分

正在读,比起C++ Primer的简约,这本书实例丰富,讲得很明白,很多之前模棱两可的概念读过之后都有了进一步了解,是我的C++入门书!

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有