C++高级编程[按需印刷]
基本信息
- 原书名: Professional C++
- 原出版社: Wrox
编辑推荐
如果你还不精通C++,但是想利用它来解决实际问题,这本书就非常适合。它深入浅出的系统介绍了C++的各项高级主题,可以很好的帮助您成为C++专家,而且不要求您先前对C++有太多了解。
内容简介回到顶部↑
本书既系统全面又突出重点,作者从c++基础知识讲起,始终着眼于c++语言的编程实践,提供了大量实践示例和解决方案,包括如何更好地实现重用、如何有效地测试和调试等c++专业人员常用的一些技术与方法,还提供了一些鲜为人知的、能大大简化工作的c十十语言特性;最后,还配有大量可重用的编码模式,并在附录中提供c十十面试宝典作为开发人员的实用指南。.
本书面向进阶c++的初学者,以及那些想把c++水平提高到专业水准的程序员和开发人员。...
本书面向进阶c++的初学者,以及那些想把c++水平提高到专业水准的程序员和开发人员。...
作译者回到顶部↑
本书提供作译者介绍
Nicholas A.Solter现就职于Sun Microsystems公司,曾在斯坦福大学攻读计算机科学专业,获得理学学士和理学硕士学位。他具有丰富的C/C++编程经验和计算机游戏开发经历,并作为助理教授在Fullerton学院讲授过一年C++课程。.
ScottJ.Kleper Reactivity公司的高级软件工程师。在初中就开始了他的编程生涯,用BASIC为Tandy TRS—80编写过一些冒险游戏。在斯坦福大学就读期间,他担任过程序设计入门和面向对象程序设计等多门课程的助教;并获得了计算机科学的理学学士和硕士学位。毕业后致力于人机.. << 查看详细
ScottJ.Kleper Reactivity公司的高级软件工程师。在初中就开始了他的编程生涯,用BASIC为Tandy TRS—80编写过一些冒险游戏。在斯坦福大学就读期间,他担任过程序设计入门和面向对象程序设计等多门课程的助教;并获得了计算机科学的理学学士和硕士学位。毕业后致力于人机.. << 查看详细
目录回到顶部↑
译者序
前言
作者简介
第一部分 专业c+十程序设计概述
第1章 c++快速入门.
1.1 c++基础
1.1.1 必不可少的"hello,world"
1.1.2 命名空间
1.1.3 变量
1.4 操作符
1.1.5 类型
1.1.6 条件语句
1.1.7 循环
1.1.8 数组
1.1.9 函数
1.1.10 结束语
1.2 c++进阶
1.2.1 指针和动态内存
1.2.2 c++中的字符串
1.2.3 引用
前言
作者简介
第一部分 专业c+十程序设计概述
第1章 c++快速入门.
1.1 c++基础
1.1.1 必不可少的"hello,world"
1.1.2 命名空间
1.1.3 变量
1.4 操作符
1.1.5 类型
1.1.6 条件语句
1.1.7 循环
1.1.8 数组
1.1.9 函数
1.1.10 结束语
1.2 c++进阶
1.2.1 指针和动态内存
1.2.2 c++中的字符串
1.2.3 引用
译者序回到顶部↑
市场上的C++书籍可谓不少,但面向的读者大多是那些对C++已经很了解的人,还有一些C++书籍更像是参考手册,而不是真正的编程书,并没有真正教我们如何使用C++。如果读者还不精通C++,但是想利用它来解决实际问题,这本书就非常适合。它深入浅出地系统介绍了C++的各项高级主题,可以很好地帮助你成为C++专家,而且不要求你先前对C++有太多了解。.
本书除了系统、全面的内容介绍外,还讲述了程序设计实践和软件工程,这也是它的另一个闪光点。并不是每个程序员都受过软件工程和软件开发方面的培训,这本书介绍了一些非常好的实践解决方案,告诉我们如何更好地实现重用、如何更快地调试等,这对我们的实际编程尤其有意义。尽早地掌握这些编程实践经验,将有助于编程新手养成良好的编程习惯,即使是具备相当编程经验的人也可以从本书了解到使用C++的更有效方法。
本书有以下特点:
·重视风格。如果不注意编程风格,尽管你完全了解C++,仍有可能写出极糟糕的C++程序,所以这本书中风格问题贯穿始终。
·突出重点。本书明确指出了哪些特性很难用、哪些方面很少用。由于C++是一个如此庞大的语言,所以读者要想真正掌握,必须切中要害,强调重点。..
·强调实战。本书没有太多“玩具型”的小例子,而是提供尽可能多的实践示例,这些示例的代码都可以真正用在你的实际工作中。
·关注模式。利用可重用的模式可以编写出更好的代码。本书特别强调了C++程序中反复出现的一些好技术,尤其着很多笔墨来介绍一些可以重用的设计模式。
尽管本书篇幅不短,但是读者读起来一点儿都不会吃力。另外,书中最后还附了一个面试宝典,这是一般的编程书所没有的,这也充分体现出这本书的实用价值。
译者认为,无论本书是作为正式教材还是自学用书,都非常适合。如果你想改进代码质量,提高编程效率,成为一个专业的C++程序员,就千万不要错过这本书。
我们衷心地感谢我们的家人和朋友。在翻译过程中,他们给予了我们莫大的关心、支持和帮助。
全书由刘鑫、杨健康、王林绪、孙健、阎慧、熊伟、朱涛江、王宇、谢剑薇、王树春、韦群、林华君、刘名臣、赵蓓、潘淼、刘立强、龚雪晶、王志淋、刘跃邦、蔡洪量、王三梅、何跃强、苏金国、丁小峰、孙春娟、阎文丽、林琪、周兴汉、张练达等进行翻译,其中,刘鑫、杨健康担任主要翻译,王林绪、孙健等进行全书术语的审核,刘名臣、赵蓓等提供技术问题支持,全体工作人员共同完成了本书的翻译工作,最后由刘鑫统稿。
由于时间仓促,且译者的水平有限,在翻译过程中难免会出现一些错误,请读者批评指正。...
本书除了系统、全面的内容介绍外,还讲述了程序设计实践和软件工程,这也是它的另一个闪光点。并不是每个程序员都受过软件工程和软件开发方面的培训,这本书介绍了一些非常好的实践解决方案,告诉我们如何更好地实现重用、如何更快地调试等,这对我们的实际编程尤其有意义。尽早地掌握这些编程实践经验,将有助于编程新手养成良好的编程习惯,即使是具备相当编程经验的人也可以从本书了解到使用C++的更有效方法。
本书有以下特点:
·重视风格。如果不注意编程风格,尽管你完全了解C++,仍有可能写出极糟糕的C++程序,所以这本书中风格问题贯穿始终。
·突出重点。本书明确指出了哪些特性很难用、哪些方面很少用。由于C++是一个如此庞大的语言,所以读者要想真正掌握,必须切中要害,强调重点。..
·强调实战。本书没有太多“玩具型”的小例子,而是提供尽可能多的实践示例,这些示例的代码都可以真正用在你的实际工作中。
·关注模式。利用可重用的模式可以编写出更好的代码。本书特别强调了C++程序中反复出现的一些好技术,尤其着很多笔墨来介绍一些可以重用的设计模式。
尽管本书篇幅不短,但是读者读起来一点儿都不会吃力。另外,书中最后还附了一个面试宝典,这是一般的编程书所没有的,这也充分体现出这本书的实用价值。
译者认为,无论本书是作为正式教材还是自学用书,都非常适合。如果你想改进代码质量,提高编程效率,成为一个专业的C++程序员,就千万不要错过这本书。
我们衷心地感谢我们的家人和朋友。在翻译过程中,他们给予了我们莫大的关心、支持和帮助。
全书由刘鑫、杨健康、王林绪、孙健、阎慧、熊伟、朱涛江、王宇、谢剑薇、王树春、韦群、林华君、刘名臣、赵蓓、潘淼、刘立强、龚雪晶、王志淋、刘跃邦、蔡洪量、王三梅、何跃强、苏金国、丁小峰、孙春娟、阎文丽、林琪、周兴汉、张练达等进行翻译,其中,刘鑫、杨健康担任主要翻译,王林绪、孙健等进行全书术语的审核,刘名臣、赵蓓等提供技术问题支持,全体工作人员共同完成了本书的翻译工作,最后由刘鑫统稿。
由于时间仓促,且译者的水平有限,在翻译过程中难免会出现一些错误,请读者批评指正。...
前言回到顶部↑
多年以来,在编写速度快、功能强的企业级面向对象程序时,C++已经成为事实上的标准语言。令人惊讶的是,尽管C++变得如此普及,我们却很难全面地掌握这种语言。一些专业C++程序员会使用一些简单但功能很强大的技术,但以往传统的资料中对此都未曾提及;另外,C++中还有一些有用的部分,这些内容即使是对经验丰富的C++程序员来说可能也很神秘。.
通常,编程方面的书更多地强调语言的语法,而不注重讲述如何实际使用这种语言来编程。一般的C++书都会分章介绍C++语言的各个主要部分,来解释相关的语法,并提供一个例子。本书不打算落人这种“俗套”。一般的图书只介绍这种语言方方面面的具体细节,而不关注实践内容,本书则不同,我们的目的很明确,就是要教你如何在实际工作中使用C++。你会从书中了解到一些鲜为人知的特性,这些特性能使你的开发更为轻松;另外这里还提供了一些可重用的编码模式,专业的程序员就是因为掌握了这些模式而从初学者中脱颖而出。
本书读者对象
即使你用C++已经很多年了,对这种语言的一些更为高级的特性可能还是不太熟悉,或者并没有充分利用到C++的全部功能。也许你编写的C++代码确实也能完成任务,但是你还想更多地了解如何完成C++设计,以及怎样才是好的编程风格。也许你是刚刚接触C++的初学者,想有一个好的起点,希望了解怎样才能“正确地”编写程序。本书将使你的C++水平更上一个台阶,达到专业水准。
因为这本书的目的是让你进阶,从对C++只有基本或初步的了解,转变成一名专业的C++程序员,因此我们假设你对这种语言已经有一定的认识了。第1章相当于一个复习,其中介绍了C++的基本知识,不过仅凭这一章,并不能取代踏踏实实的培训和具体地使用这种语言。即使你刚开始学习C++,但C编程的经验很丰富,阅读第1章应该也够了,你需要的大多数知识都能从中找到。无论如何,你都应当有牢固的编程基础,除了应该对循环、函数和变量等内容了如指掌外,还应该知道如何组织程序的结构,对诸如递归等基本技术应该也不陌生。另外,你应当对散列表和队列等常用的数据结构有一定了解,还应该知道排序和查找等有用的算法。当然,你可以不了解面向对象编程,这部分内容将在第3章介绍。
你可以采用任何编译器来开发代码,但必须熟悉所用的编译器。本书不会提供各种编译器的具体用法说明,你可以参考编译器随附的文档来回顾有关的内容。
本书内容
本书提供了一种C++编程方法,这种方法不仅可以改进你的代码质量,还可以提高编程效率。本书不单单讲述C++的语法和语言特性,它还强调了一些编程方法、可重用的设计模式以及好的编程风格。其中,编程方法涵盖了整个软件开发过程,从开始设计和编写代码,到测试、调试和分组工作都有涉及。学完本书,你将掌握C++语言和它的诸多特性,并能充分利用C++的强大功能来完成大规模软件开发。
假设有人已经学过C++的所有语法,但没有见过任何一个简单实例,这就很危险了!没有做过或看 过具体的例子,他可能会认为所有代码都应当放在程序的main()函数中,或者认为所有变量都应当是全局变量,而通常这些做法都是不好的编程实践。
专业的C++程序员除了了解C++的语法之外,还知道如何正确地使用这种语言。他们认识到好的设计极其重要,并了解面向对象编程理论,知道有哪些最佳的方法来使用现有的库。这些专业的程序员已经开发了大量有用的代码,并提出了许多可重用的思想。..
通过阅读本书,你将成为一个专业的C++程序员。你对C++的了解将更为深入,会掌握一些鲜为人知而且通常被误解的语言特性。除此以外,你将学习面向对象程序设计的内容,并获得一些高超的调试技巧。最重要的是,读过这本书后,你的脑海中会留下许多可重用思想,这些思想能够用于实际日常工作当中。
为什么费心尽力地想要成为一个专业的C++程序员,而不是一个只了解C++皮毛的程序员,原因有很多。如果能通晓C++语言的实际工作原理,将大大改善你的代码质量。通过了解不同的编程方法和过程,将有助于你更好地与你的开发小组协作;若能发现可重用的库和常用的设计模式,将有助于提高你的日常工作效率,并避免重蹈覆辙。所有这些,都将使你成为一个更好的程序员和一个更有价值的员工。不过,就算本书没有带给你升迁之喜,多了解一些总不是坏事吧!
本书的组织结构
本书包括6大部分。
第一部分,“专业C++程序设计概述”,先提供C++基础知识的快速入门课程,为你奠定一定的C++基础。在入门课程之后,将分析C++设计方法。你会了解到设计的重要性、面向对象方法、库和模式的使用、代码重用的重要性,以及当前为众多编程机构所用的工程实践方法。
第二部分,“编写C++代码方式”,这一部分从专业角度为读者提供了一次C++技术之旅。从中可了解到如何编写可读的C++代码,如何创建可重用的类,以及如何充分利用诸如继承和模板等重要的语言特性。
第三部分,“掌握C++高级特性”,在此介绍了如何更充分地利用C++。本书这一部分展示了C++的诸多神秘之处,并介绍了如何使用这样一些更高级的特性。在这一部分中你将看到C++语言中一些不常用甚至有些古怪的部分,并了解C++中管理内存有哪些好方法,此外还将学习输入输出技术、专业级错误处理、高级的操作符重载、如何编写高效的C++代码,以及如何编写跨语言和跨平台的代码。
第四部分,“确保无错代码”,这一部分的重点是如何编写企业质量的(enterprise-quality)软件。你将了解一些软件测试概念,如单元测试和回归测试,还将学习调试C++程序时会用到的一些技术。
第五部分,“使用库和模式”,这一部分介绍了库和模式的使用,基于库和模式的编程,不仅可以使你更省力,还可帮助你编写出更好的代码。你将了解C++提供的标准库,包括诸如扩展标准库的一些高级主题。你还将学习分布式对象、可重用C++设计技术和概念上的面向对象设计模式的有关内容。
本书最后一部分对各章提供了一个实用指南,以方便查阅有关的C++技术。在本书相关网站上(www.wrox.com),还能找到C++标准库的一个实用参考指南。
通常,编程方面的书更多地强调语言的语法,而不注重讲述如何实际使用这种语言来编程。一般的C++书都会分章介绍C++语言的各个主要部分,来解释相关的语法,并提供一个例子。本书不打算落人这种“俗套”。一般的图书只介绍这种语言方方面面的具体细节,而不关注实践内容,本书则不同,我们的目的很明确,就是要教你如何在实际工作中使用C++。你会从书中了解到一些鲜为人知的特性,这些特性能使你的开发更为轻松;另外这里还提供了一些可重用的编码模式,专业的程序员就是因为掌握了这些模式而从初学者中脱颖而出。
本书读者对象
即使你用C++已经很多年了,对这种语言的一些更为高级的特性可能还是不太熟悉,或者并没有充分利用到C++的全部功能。也许你编写的C++代码确实也能完成任务,但是你还想更多地了解如何完成C++设计,以及怎样才是好的编程风格。也许你是刚刚接触C++的初学者,想有一个好的起点,希望了解怎样才能“正确地”编写程序。本书将使你的C++水平更上一个台阶,达到专业水准。
因为这本书的目的是让你进阶,从对C++只有基本或初步的了解,转变成一名专业的C++程序员,因此我们假设你对这种语言已经有一定的认识了。第1章相当于一个复习,其中介绍了C++的基本知识,不过仅凭这一章,并不能取代踏踏实实的培训和具体地使用这种语言。即使你刚开始学习C++,但C编程的经验很丰富,阅读第1章应该也够了,你需要的大多数知识都能从中找到。无论如何,你都应当有牢固的编程基础,除了应该对循环、函数和变量等内容了如指掌外,还应该知道如何组织程序的结构,对诸如递归等基本技术应该也不陌生。另外,你应当对散列表和队列等常用的数据结构有一定了解,还应该知道排序和查找等有用的算法。当然,你可以不了解面向对象编程,这部分内容将在第3章介绍。
你可以采用任何编译器来开发代码,但必须熟悉所用的编译器。本书不会提供各种编译器的具体用法说明,你可以参考编译器随附的文档来回顾有关的内容。
本书内容
本书提供了一种C++编程方法,这种方法不仅可以改进你的代码质量,还可以提高编程效率。本书不单单讲述C++的语法和语言特性,它还强调了一些编程方法、可重用的设计模式以及好的编程风格。其中,编程方法涵盖了整个软件开发过程,从开始设计和编写代码,到测试、调试和分组工作都有涉及。学完本书,你将掌握C++语言和它的诸多特性,并能充分利用C++的强大功能来完成大规模软件开发。
假设有人已经学过C++的所有语法,但没有见过任何一个简单实例,这就很危险了!没有做过或看 过具体的例子,他可能会认为所有代码都应当放在程序的main()函数中,或者认为所有变量都应当是全局变量,而通常这些做法都是不好的编程实践。
专业的C++程序员除了了解C++的语法之外,还知道如何正确地使用这种语言。他们认识到好的设计极其重要,并了解面向对象编程理论,知道有哪些最佳的方法来使用现有的库。这些专业的程序员已经开发了大量有用的代码,并提出了许多可重用的思想。..
通过阅读本书,你将成为一个专业的C++程序员。你对C++的了解将更为深入,会掌握一些鲜为人知而且通常被误解的语言特性。除此以外,你将学习面向对象程序设计的内容,并获得一些高超的调试技巧。最重要的是,读过这本书后,你的脑海中会留下许多可重用思想,这些思想能够用于实际日常工作当中。
为什么费心尽力地想要成为一个专业的C++程序员,而不是一个只了解C++皮毛的程序员,原因有很多。如果能通晓C++语言的实际工作原理,将大大改善你的代码质量。通过了解不同的编程方法和过程,将有助于你更好地与你的开发小组协作;若能发现可重用的库和常用的设计模式,将有助于提高你的日常工作效率,并避免重蹈覆辙。所有这些,都将使你成为一个更好的程序员和一个更有价值的员工。不过,就算本书没有带给你升迁之喜,多了解一些总不是坏事吧!
本书的组织结构
本书包括6大部分。
第一部分,“专业C++程序设计概述”,先提供C++基础知识的快速入门课程,为你奠定一定的C++基础。在入门课程之后,将分析C++设计方法。你会了解到设计的重要性、面向对象方法、库和模式的使用、代码重用的重要性,以及当前为众多编程机构所用的工程实践方法。
第二部分,“编写C++代码方式”,这一部分从专业角度为读者提供了一次C++技术之旅。从中可了解到如何编写可读的C++代码,如何创建可重用的类,以及如何充分利用诸如继承和模板等重要的语言特性。
第三部分,“掌握C++高级特性”,在此介绍了如何更充分地利用C++。本书这一部分展示了C++的诸多神秘之处,并介绍了如何使用这样一些更高级的特性。在这一部分中你将看到C++语言中一些不常用甚至有些古怪的部分,并了解C++中管理内存有哪些好方法,此外还将学习输入输出技术、专业级错误处理、高级的操作符重载、如何编写高效的C++代码,以及如何编写跨语言和跨平台的代码。
第四部分,“确保无错代码”,这一部分的重点是如何编写企业质量的(enterprise-quality)软件。你将了解一些软件测试概念,如单元测试和回归测试,还将学习调试C++程序时会用到的一些技术。
第五部分,“使用库和模式”,这一部分介绍了库和模式的使用,基于库和模式的编程,不仅可以使你更省力,还可帮助你编写出更好的代码。你将了解C++提供的标准库,包括诸如扩展标准库的一些高级主题。你还将学习分布式对象、可重用C++设计技术和概念上的面向对象设计模式的有关内容。
本书最后一部分对各章提供了一个实用指南,以方便查阅有关的C++技术。在本书相关网站上(www.wrox.com),还能找到C++标准库的一个实用参考指南。
相关资源回到顶部↑
· 【推荐】众多高校学子口口相传,他们共同的选择--华清远见嵌入式学院(嵌入式Linux就业课程、3G手机开发就业课程,通过入学测试即签100%就业协议,4个月集中实训,世界500强企业成功就业保障!!!)· 【亚嵌教育 嵌入式培训专家】(嵌入式培训,嵌入式Linux培训,ARM培训,Linux培训,3G培训,Android培训,WINCE培训,DSP培训,FPGA培训,嵌入式就业培训)
· 程序员的7种武器(正则表达式、编程语言、数据库、算法、软件调试、开发环境)
· C/C++ 经典著作(《C专家编程》《C++ Templates中文版》《C和指针 》《C陷阱与缺陷》《C++沉思录》)


点击看大图






加载中...