Effecitve C++.pdf

5星(超过95%的资源)
所需积分/C币:9 2010-11-05 17:41:46 791KB APPLICATION/PDF
21
收藏 收藏
举报

这本书是多年来我对专业程序员所做的 C++ 教学课程下的一个自然产物。我发 现,大部份学生在一个星期的密集训练之后,即可适应这个语言的基本架构,但 要他们「将这些基础架构以有效的方式组合运用」,我实在不感乐观。于是我开 始尝试组织出一些简短、明确、容易记忆的准则,做为C++ 高实效性程序开发 过程之用。那都是经验丰富的C++ 程序员几乎总是会奉行或几乎肯定要避免的 一些事情。 我最初的兴趣在于整理出一些可被某种「lint-like 程序」施行的规则,最后我甚 至领导一个计划,研究某种可将C++ 原始码中违反使用者指定条件之处检验出 来的工具(你可以在Effective C++ 网站上找到此研究的一份概要报告)。不幸的 是在我尚未完成其完整原型之前,这个研究计划便结束了。幸运的是,目前市面 上已有这类C++ 检验工具(商品),而且不只一个。 虽然我最初的兴趣是在研究可被(某种工具)自动实施的程序设计准则,但我很 快了解到那个研究方向的局限性。优秀的C++ 程序员所奉行的准则,多数都难 以「公式化」;要不就是虽然它们有许多重要的例外情况,却被程序员盲目地奉 行不渝。这使我念头一转:某些东西虽然不比计算机程序精准,但仍能比一本泛 泛的C++ 教科书更集中火力,更打到重点。这个念头的结果就是你手上这本书: 一本内含50 个有效建议(如何改善你的C++ 程序技术和你的设计思维)的书。 在这本书中,你会发现一些忠告,告诉你应该做些什么,为什么如此;告诉你不 应该做些什么,又为什么如此。基本而言当然whys 比whats 更重要,但检阅一 列列准则,也确实比强记一本或两本教科书更轻松更方便得多。 和大部份的 C++ 书籍不同,我的组织方式并非以语言特性做为依据。也就是说 我并不在某处集中讨论constructors(建构式),在另一处集中讨论virtual functions (虚拟函式),又在第三个地方集中讨论inheritance(继承机制)。不,不是这 样,本书的每一个讨论主题都剪裁合度地以一个个准则陈列出来。至于我对某特 定语言性质的探讨,散布面积可能涵盖整本书。 这种作法的优点就是比较容易反映出「特意挑选 C++ 做为开发工具」的那些软 件系统的复杂度。在那些系统之中,光只了解个别语言特性是不够的。例如,有 经验的C++ 程序员知道,了解inline 函式和了解virtual destructors,并不一定表 示你了解inline virtual destructors。身经百战的开发人员都认知到,理解C++ 各 个特性之间的互动关系,才是有效使用这个语言的最重要关键。本书组织反映出 这一基本事实。 这种作法的缺点是,你恐怕必须前后交叉参考而非只看一个地方,才能发现我所 说的某个C++ 架构的全貌。为了将不方便性降至最低,我在书中各处放了许多 交叉索引,书后并有一份涵盖全部范围的索引。(译注:为了协助读者更容易掌 握 Effective C++ 和More Effective C++ 二书,我以Effective C++ CD 为本,为 两书的中文版额外加上两书之间的交叉索引。此乃原书所无。如果文中出现像条 款 M5 这样的参考指示,M 便是代表More Effective C++) 筹划第二版期间,我改写此书的雄心一再被恐惧所取代。成千上万的程序员热情 拥抱Effective C++ 第一版,我不希望破坏吸引他们的任何东西。但是自从我写 了第一版之后,六年过去了,C++ 有了变化,C++ 链接库有了变化(见条款49), 我对C++ 的了解也有了变化,乃至于C++ 的用途也有了变化。许许多多的变化。 对我而言,重要的是我必须修订Effective C++ 以反映那些变化。我尝试一页一 页地修改内容,但是书籍和软件十分类似,局部加强是不够的,唯一的机会就是 系统化地重写。本书就是重写后的结果:Effective C++ 2.0 版。 熟悉第一版的读者,可能有兴趣知道,书中的每一个条款都经过重新检验。然而 我相信第一版的结构至今仍是流畅的,所以整本书的结构并没有改变。50 个条 款中,我保留了48 个,其中某些标题稍有变化(附随的讨论内容亦复如此)。 退休下来(被取代的)两个条款是32 和49,不过原条款32 的许多信息被我移 到如今焕然一新的条款1 中。我将条款41 和42 的次序做了对调,因为这样比 较能够适当呈现它们修订后的内容。最后,我把上一版继承体系图所采用的箭头 方向颠倒过来,以符合目前几乎已经一致的习惯:从derived classes 指往base classes。我的More Effective C++ 一书也采用相同习惯(本书最后列有该书摘要)。 本书提供的准则,离巨细糜遗的程度还很远,但是完成一个好的准则— 一

...展开详情
试读 213P Effecitve C++.pdf
立即下载 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
那年聪聪 c++深入学习,很好的一本书,强烈推荐
2016-03-30
回复
matrix_hu 编程技巧很全面,推荐
2014-03-04
回复
霖霖霖少 这书中的编程技巧真的受益终身,建议先看完effective,再看more effective ,谢谢····
2012-10-28
回复
nake1000 c++深入学习,很好的一本书,强烈推荐
2012-09-03
回复
qq1282867270 英文作者,中文翻译,很不错
2012-08-08
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
关注 私信
上传资源赚钱or赚积分
最新推荐
Effecitve C++.pdf 9积分/C币 立即下载
1/213
Effecitve C++.pdf第1页
Effecitve C++.pdf第2页
Effecitve C++.pdf第3页
Effecitve C++.pdf第4页
Effecitve C++.pdf第5页
Effecitve C++.pdf第6页
Effecitve C++.pdf第7页
Effecitve C++.pdf第8页
Effecitve C++.pdf第9页
Effecitve C++.pdf第10页
Effecitve C++.pdf第11页
Effecitve C++.pdf第12页
Effecitve C++.pdf第13页
Effecitve C++.pdf第14页
Effecitve C++.pdf第15页
Effecitve C++.pdf第16页
Effecitve C++.pdf第17页
Effecitve C++.pdf第18页
Effecitve C++.pdf第19页
Effecitve C++.pdf第20页

试读结束, 可继续阅读

9积分/C币 立即下载