C++编程艺术
基本信息
- 原书名: The Art of C++
- 原出版社: McGraw-Hill
编辑推荐
程序设计大师Herbert Schildt的又一精心力作,为您揭示C++程序员创建世界级软件的奥秘,告诉您编程工作不再是一种机械劳动!
内容简介回到顶部↑
本书揭示了C++程序员创建世界级软件的奥秘。程序设计大师Herbert Schildt通过将C++语言广泛应用于功能强大的编程任务中,全面展示了C++语言的多功能性,敏捷性,和艺术性。本书内容包括探索C++的功能,创建内存管理的垃圾回收器子系统,开发线程控制面板,建立译码器以扩展C++的功能,开发可断点续传的Internet文件下载工具,创建财务分析库,用基于AI的搜索技术探索人工智能,建立定制的STL容器,以及开发Mini C++解释程序。书中所有示例和项目的源代码都可以从www.osborne.com 上免费下载。
作译者回到顶部↑
本书提供作译者介绍
Herbert Schildt 全球顶尖编程图书作者之一。他是C、C++、Java和C#编程语言的权威,也是Windows编程方面的专家。他的编程图书被译为多国语言(例如中文版《Java编程艺术》),在世界范围内的销量已经超过300万册。
曹蓉蓉,女,1963年生,副教授、工学硕士,计算机软件青年专家;先后毕业于解放军信息工程大学、国防科技大学;发表学术论文20余篇,出版学术专著和译著三部;主要研究方向为面向对象程序设计技术、计算机软件教学与系统开发、计算机网络软件系统。
刘小荷,女,1961年生,教授,大型软件.. << 查看详细
曹蓉蓉,女,1963年生,副教授、工学硕士,计算机软件青年专家;先后毕业于解放军信息工程大学、国防科技大学;发表学术论文20余篇,出版学术专著和译著三部;主要研究方向为面向对象程序设计技术、计算机软件教学与系统开发、计算机网络软件系统。
刘小荷,女,1961年生,教授,大型软件.. << 查看详细
目录回到顶部↑
第1章 c++的功能 1
1.1 简洁而丰富的语法 1
1.2 功能强大的库 2
1.3 stl 2
1.4 程序员控制一切 3
1.5 细节控制 3
1.6 运算符重载 3
1.7 一种简洁精练的对象模型 4
1.8 c++发展史 4
第2章 简单的c++垃圾回收器 5
2.1 两种内存管理方法的比较 5
2.1.1 手工内存管理的优缺点 6
2.1.2 垃圾回收的优缺点 6
2.1.3 两种方法都可以使用 7
2.2 在c++中创建垃圾回收器 7
2.3 选择垃圾回收的算法 8
2.3.1 引用计数 9
2.3.2 标记并清除 9
2.3.3 复制 9
2.3.4 采用哪种算法 9
1.1 简洁而丰富的语法 1
1.2 功能强大的库 2
1.3 stl 2
1.4 程序员控制一切 3
1.5 细节控制 3
1.6 运算符重载 3
1.7 一种简洁精练的对象模型 4
1.8 c++发展史 4
第2章 简单的c++垃圾回收器 5
2.1 两种内存管理方法的比较 5
2.1.1 手工内存管理的优缺点 6
2.1.2 垃圾回收的优缺点 6
2.1.3 两种方法都可以使用 7
2.2 在c++中创建垃圾回收器 7
2.3 选择垃圾回收的算法 8
2.3.1 引用计数 9
2.3.2 标记并清除 9
2.3.3 复制 9
2.3.4 采用哪种算法 9
译者序回到顶部↑
本书作者Herbert Schildt,是公认的C、C++、Java和C#等主流编程语言的程序设计大师和Windows程序设计专家,也是顶级编程图书作者;同时,他还是ANSI/ISO和C++标准化组织的专家。他的编程书籍被翻译成多种语言版本广为流传,在全球世界范围内的销量已经超过三百万册。
本书的突出特点之一是编程技巧全面。本书以C++国际标准语法为基础,从高级特性全面讲解C++语言编程技术、技巧,充分展示了C++语言的强大性、多样性、优美性、敏捷性和艺术性。作者结合多年软件开发和教学经验总结出非常有价值的完整示例,以行之有效的方法让读者快速精通C++语言编程技巧。本书每章给出的示例代码都可以直接运行,无需修改,而且读者可以从www.osborne.com网站免费下载本书代码。相信读者通过研读本书可大大提高C++编程能力。
本书的突出特点之二是内容丰富实用。在本书中,Herbert Schildt给出了许多非常实用的高性能程序,每个程序分别侧重于C++语言的不同方面。本书的实用示例程序主要包括垃圾回收器子系统、可以断点续传的Internet文件下载程序、线程控制面板、基于人工智能(AI)的搜索程序、通用STL容器和小型C++解释程序等。作者对每个程序都给出了非常细致的分析和解释,这对于读者来说无疑是大有帮助的。本书代码示例易懂有趣、设计思想独特,从中读者可以学到很多在其他C++书中无法学到的技巧,使读者能够掌握C++高级编程的技巧,真正进入C++高级编程领域,值得每位C++程序员阅读和珍藏。
本书的突出特点之三是文笔透彻精确。Herbert Schildt是全球著名的程序设计语言书籍作者,本书秉承他一贯的写作风格:简捷、清晰,非常适合读者的学习和阅读。通过本书的阅读,读者可在C++程序设计大师的引领下探索编写高性能C++程序的奥秘。本书让读者的C++编程技术更上一层楼。
本书为C++编程高级读物,面向有初级C++语言基础和一定编程经历的程序设计者,适合作为高等院校计算机专业相关课程辅助教材,也可作为高年级本科生、研究生和广大编程爱好者深入学习C++及其他面向对象语言的技术参考书。
本书由曹蓉蓉、刘小荷翻译;毕长剑、战晓苏审校。
简介
虽然与Herbert Schildt的高超造诣相比甚远,但是本书的译者和审校者还是凭借多年的C++教学和编程经验,在翻译、校译此书的过程中,抱着对读者认真负责的态度,力争将原书的风格和思想原原本本地呈现给读者。还要特别指出的是,清华大学出版社对本书非常重视,从全书的翻译、编辑、排版到印刷质量上都下了很大的功夫。因此,可以相信这本中译本能够成为对读者大有裨益的好书。
此外,我们曾专门以电子邮件方式与原书作者进行了多次沟通,将原书的个别错误在翻译、校译和审校过程中加以改正。限于水平的原因,中译本中不妥或错误之处在所难免,敬请广大读者批评指正。我们的e-mail是fwkbook@tup.tsinghua.edu.cn,读者有问题可随时联系。
本书的突出特点之一是编程技巧全面。本书以C++国际标准语法为基础,从高级特性全面讲解C++语言编程技术、技巧,充分展示了C++语言的强大性、多样性、优美性、敏捷性和艺术性。作者结合多年软件开发和教学经验总结出非常有价值的完整示例,以行之有效的方法让读者快速精通C++语言编程技巧。本书每章给出的示例代码都可以直接运行,无需修改,而且读者可以从www.osborne.com网站免费下载本书代码。相信读者通过研读本书可大大提高C++编程能力。
本书的突出特点之二是内容丰富实用。在本书中,Herbert Schildt给出了许多非常实用的高性能程序,每个程序分别侧重于C++语言的不同方面。本书的实用示例程序主要包括垃圾回收器子系统、可以断点续传的Internet文件下载程序、线程控制面板、基于人工智能(AI)的搜索程序、通用STL容器和小型C++解释程序等。作者对每个程序都给出了非常细致的分析和解释,这对于读者来说无疑是大有帮助的。本书代码示例易懂有趣、设计思想独特,从中读者可以学到很多在其他C++书中无法学到的技巧,使读者能够掌握C++高级编程的技巧,真正进入C++高级编程领域,值得每位C++程序员阅读和珍藏。
本书的突出特点之三是文笔透彻精确。Herbert Schildt是全球著名的程序设计语言书籍作者,本书秉承他一贯的写作风格:简捷、清晰,非常适合读者的学习和阅读。通过本书的阅读,读者可在C++程序设计大师的引领下探索编写高性能C++程序的奥秘。本书让读者的C++编程技术更上一层楼。
本书为C++编程高级读物,面向有初级C++语言基础和一定编程经历的程序设计者,适合作为高等院校计算机专业相关课程辅助教材,也可作为高年级本科生、研究生和广大编程爱好者深入学习C++及其他面向对象语言的技术参考书。
本书由曹蓉蓉、刘小荷翻译;毕长剑、战晓苏审校。
简介
虽然与Herbert Schildt的高超造诣相比甚远,但是本书的译者和审校者还是凭借多年的C++教学和编程经验,在翻译、校译此书的过程中,抱着对读者认真负责的态度,力争将原书的风格和思想原原本本地呈现给读者。还要特别指出的是,清华大学出版社对本书非常重视,从全书的翻译、编辑、排版到印刷质量上都下了很大的功夫。因此,可以相信这本中译本能够成为对读者大有裨益的好书。
此外,我们曾专门以电子邮件方式与原书作者进行了多次沟通,将原书的个别错误在翻译、校译和审校过程中加以改正。限于水平的原因,中译本中不妥或错误之处在所难免,敬请广大读者批评指正。我们的e-mail是fwkbook@tup.tsinghua.edu.cn,读者有问题可随时联系。
前言回到顶部↑
从早期的FORTRAN语言开始,计算机语言就一直不断地发展演变。在此过程中,消除了不稳固的特性,取而代之的是一些功能强大的特性。多年过去后,这些进化的努力被精练为一种纯粹的形式,那就是程序设计语言应该具有的纯净本质。这么多年努力的结果就是C++语言的产生,在程序设计历史上,任何其他语言都没有像C++语言拥有如此重要的地位。
C++的成功取决于许多原因。语法简洁而优雅;对象模型简明流畅,容易理解;C++中提供了精心编写的库。然而,并非是这些特性为C++赢得历史上的重要地位,而是C++给予程序设计人员的强大的功能。从来没有其他的语言能够使得程序设计人员更加直接地控制计算机。通过使用C++,程序设计人员就是机器的主人—— 这正是所有的程序设计人员所需要的。
没有边界,没有限制,没有约束。这就是C++语言。
0.1 本书内容
本书不同于大多数其他的C++书籍。其他的C++书籍讲授语言的基础,而本书展示了如何应用C++在更大的范围内完成有趣的、有用的、甚至是神秘的程序设计任务。在此过程中充分显示了C++语言的强大功能和优雅性。
大致来说,本书包含两类应用程序,第一类称为“纯代码”,因为它们注重于扩展C++程序设计环境本身。第2章的垃圾回收器,第3章的线程控制面板以及第8章的定制STL容器都是这种类型的示例。第二类应用程序显示了如何应用C++来完成各种计算任务。例如,第5章开发了一个可以断点续传的网络下载工具,第6章给出了一个如何建立财务应用程序的范例,第8章中应用C++实现了人工智能应用。
本书以一段独特有趣的代码结束:Mini C++解释程序,这个程序可以解释C++的一个小子集。Mini C++解释程序揭示了C++的关键字和语法是如何一起工作从而组成这门语言的语法的。更重要的是,这可以使您了解这门语言的内部机制,并且显示了隐藏在C++设计背后的一些原因。使用Mini C++解释程序不仅有趣,它还可以用作开发您自己的语言的起点,还可以用作其他语言的解释程序。
本书每一章都提供了可以直接使用的代码。例如,第2章的垃圾回收器可以适用于许多程序设计任务。然而,只有把这些应用程序作为自己的开发起点,才会获益匪浅。例如,可以进一步完善第8章的Internet文件下载工具,使其可以在某个指定的时间开始下载,或者可以监控一个下载站点,保持下载最新的文件。总之,可以将这些不同的程序和子系统作为您开发自己项目的跳板。
0.2 预备知识
本书假定读者具有坚实的C++语言基础知识。读者应该能够创建、编译并运行C++程序。应该能够使用指针、模板以及异常处理,理解复制构造函数并且熟悉标准库的常用部分。因此,本书假定读者具有可以从C++教程中获得的技巧。
如果读者需要复习或者加强基础知识,作者推荐下面几本书。
C++ From the Ground Up
C++: A Beginner’s Guide
C++: The Complete Reference
这3本书都是McGraw-Hill/Osborne出版社发行的。其中C++: A Beginner’s Guide一书的第1版和第2版已经由清华大学出版社出版发行,书名为《C++基础教程》和《C++基础教程(第2版)》。
0.3 源代码
本书所有的示例和项目的源代码都可以从网站www.osborne.com上免费下载。
C++的成功取决于许多原因。语法简洁而优雅;对象模型简明流畅,容易理解;C++中提供了精心编写的库。然而,并非是这些特性为C++赢得历史上的重要地位,而是C++给予程序设计人员的强大的功能。从来没有其他的语言能够使得程序设计人员更加直接地控制计算机。通过使用C++,程序设计人员就是机器的主人—— 这正是所有的程序设计人员所需要的。
没有边界,没有限制,没有约束。这就是C++语言。
0.1 本书内容
本书不同于大多数其他的C++书籍。其他的C++书籍讲授语言的基础,而本书展示了如何应用C++在更大的范围内完成有趣的、有用的、甚至是神秘的程序设计任务。在此过程中充分显示了C++语言的强大功能和优雅性。
大致来说,本书包含两类应用程序,第一类称为“纯代码”,因为它们注重于扩展C++程序设计环境本身。第2章的垃圾回收器,第3章的线程控制面板以及第8章的定制STL容器都是这种类型的示例。第二类应用程序显示了如何应用C++来完成各种计算任务。例如,第5章开发了一个可以断点续传的网络下载工具,第6章给出了一个如何建立财务应用程序的范例,第8章中应用C++实现了人工智能应用。
本书以一段独特有趣的代码结束:Mini C++解释程序,这个程序可以解释C++的一个小子集。Mini C++解释程序揭示了C++的关键字和语法是如何一起工作从而组成这门语言的语法的。更重要的是,这可以使您了解这门语言的内部机制,并且显示了隐藏在C++设计背后的一些原因。使用Mini C++解释程序不仅有趣,它还可以用作开发您自己的语言的起点,还可以用作其他语言的解释程序。
本书每一章都提供了可以直接使用的代码。例如,第2章的垃圾回收器可以适用于许多程序设计任务。然而,只有把这些应用程序作为自己的开发起点,才会获益匪浅。例如,可以进一步完善第8章的Internet文件下载工具,使其可以在某个指定的时间开始下载,或者可以监控一个下载站点,保持下载最新的文件。总之,可以将这些不同的程序和子系统作为您开发自己项目的跳板。
0.2 预备知识
本书假定读者具有坚实的C++语言基础知识。读者应该能够创建、编译并运行C++程序。应该能够使用指针、模板以及异常处理,理解复制构造函数并且熟悉标准库的常用部分。因此,本书假定读者具有可以从C++教程中获得的技巧。
如果读者需要复习或者加强基础知识,作者推荐下面几本书。
C++ From the Ground Up
C++: A Beginner’s Guide
C++: The Complete Reference
这3本书都是McGraw-Hill/Osborne出版社发行的。其中C++: A Beginner’s Guide一书的第1版和第2版已经由清华大学出版社出版发行,书名为《C++基础教程》和《C++基础教程(第2版)》。
0.3 源代码
本书所有的示例和项目的源代码都可以从网站www.osborne.com上免费下载。
相关资源回到顶部↑
· 专家书评..
· 【推荐】众多高校学子口口相传,他们共同的选择--华清远见嵌入式学院(嵌入式Linux就业课程、3G手机开发就业课程,通过入学测试即签100%就业协议,4个月集中实训,世界500强企业成功就业保障!!!)· 【亚嵌教育 嵌入式培训专家】(嵌入式培训,嵌入式Linux培训,ARM培训,Linux培训,3G培训,Android培训,WINCE培训,DSP培训,FPGA培训,嵌入式就业培训)
· 程序员的7种武器(正则表达式、编程语言、数据库、算法、软件调试、开发环境)
· C/C++ 经典著作(《C专家编程》《C++ Templates中文版》《C和指针 》《C陷阱与缺陷》《C++沉思录》)








点击看大图







加载中...
