您的位置:首页 > 编程语言 > C语言/C++

C++ FAQS 翻译 (第一部分 预备知识 第一章 介绍)

2004-11-11 20:52 543 查看
第一章 介绍

问题1.1:本章的目的?
答:说明本书讲述的范围,以及它与本书第一个版本、电子版本之间有怎样的联系,最后介绍使用的约定。
本章讨论本书的目的和随后的使用约定,讨论就算你已经买了本书的第一个版本、阅读过电子版本,你还是应该购买本书。

问题1.2:《C++ FAQs》是什么?
答:Frequently Asked Questions(常见问题的回答,简称FAQs)是关于面向对象编程和c++语言问题的回答。
每个FAQ都对问题提供了深入详细的指导。为了阐明问题的原理,许多FAQS提供了完整的、可运行例子程序。FAQS更像是"问题真相"。
FAQS不一定都是读者问过的,但它们应该是读者将会问的。尽管这些问题不是公开讨论的,但大部分的问题是从实际的经验中总结出来的。于是本书的作者决定将这些问题编著成册,而不是一便便的重复相同的原理。
通过本书,你能够逐渐的掌握面向对象编程和C++语言的能力。从现在开始,阅读这些常见问题吧!

问题1.3:本书适于的读者群?
答:专业的软件开发人员。
本书面向的开发人员包括:程序员、架构师和设计师。拥有编程经验的人学习面向对象的C++会更有效,本书假定读者有一定的编程背景。不一定要熟悉c语言,但是如果能熟悉的话也会相当有好处。

问题1.4:这本书仅仅讲述C++本身吗?
答:本书重点讲述的是C++中面向对象(object-oriented)的方面。因此,只要你在本书中看到"C++",你就应该将它与"object-oriented"联系在一起(偶尔我也会标出"object-oriented"来提醒读者)。
本书另外一个讲述的重点是实际使用C++时的一些方法,但是不会对C++本身的所有语言细节进行探究。也就是说,本书不会像传统的C++书籍一样从头到尾、详尽的讲述C++语言的语法和特性。本书关注的是C++的关键特性(例如它的OO特性)和怎样才能更为有效的运用这些特性。这样做还有一个原因是因为C++语言的体系过于庞大,而让开发者完全掌握和使用它的特性太过困难。
可以说,本书的成功之处在于C++思想的表述,而不是去简单的描述C++的规则。掌握了C++的思想,辅以长期的编程实践,能有效的降低开发风险(比如运用一些有效的C++组合规则,而不是简单的堆砌C++语法)。在C++中比较容易混淆的特性、表面上相同的方法,常常令开发者在选择上陷入困境,所以掌握C++的思想对于提高开发效率是至关重要的。
本书还尝试将软件架构师、软件设计师和C++程序员联系起来(见第四章)。

问题1.5:开发者为什么需要一本讲述C++及面向对象技术的指导手册?
答:学习合理的使用C++及面向对象技术,对于每一个开发者来说都是漫长的、充满艰辛的旅程。
由于C++语言的繁杂和庞大,开发者确实需要一张指引他们如何正确使用C++语言的"地图"。例如,在提高软件的易理解性和可扩展性方面,继承是一项强大的工具,如果被过度使用就会造成在设计期间的代价过高。
面向对象技术领域涵盖极广,而且它还在进行不断的演化和分支。由于上述情况,一本详尽的指导手册是必需的。本书中的FAQs涵盖了C++和面向对象领域最新技术,因此你不需要花时间在已经掌握的技术之上,而领略新技术的风采。FAQs中还指出了一些不正确的和有问题的习惯用法。
为了提高效率,开发者需要理解C++语言的特性和编程时如何结合使用这些特性。例如,指针运算和is-a转换(见问题2.24)都是很有用的。但是在使用他们的时候,一些微小的偏差就会带来巨大的影响(见问题8.16)。同样的问题会出现在overloading(重载)和overriding(覆盖)、overriding和默认参数列表、抽象类和委派等等之间。所以仅仅理解了C++的语言特性是不够的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: