<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="generator" content="pdf2htmlEX">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="https://static.pudn.com/base/css/base.min.css">
<link rel="stylesheet" href="https://static.pudn.com/base/css/fancy.min.css">
<link rel="stylesheet" href="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/raw.css">
<script src="https://static.pudn.com/base/js/compatibility.min.js"></script>
<script src="https://static.pudn.com/base/js/pdf2htmlEX.min.js"></script>
<script>
try{
pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
}catch(e){}
</script>
<title></title>
</head>
<body>
<div id="sidebar" style="display: none">
<div id="outline">
</div>
</div>
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/bg1.jpg"><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h3 y2 ff2 fs1 fc0 sc0 ls0 ws0">深入<span class="_ _0"> </span>系列<span class="ff3"> </span></div><div class="t m0 x3 h4 y3 ff4 fs2 fc0 sc0 ls0 ws0">Primer </div><div class="t m0 x4 h5 y4 ff2 fs3 fc0 sc0 ls0 ws0">第三版</div><div class="t m0 x5 h6 y5 ff3 fs4 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h7 y6 ff3 fs5 fc0 sc0 ls1 ws0"> </div><div class="t m0 x6 h8 y7 ff3 fs6 fc0 sc0 ls0 ws0"> </div><div class="t m0 x6 h7 y8 ff3 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x7 h5 y6 ff3 fs3 fc0 sc0 ls0 ws0"> <span class="_ _1"> </span><span class="ff2">著</span> </div><div class="t m0 x8 h9 y9 ff2 fs7 fc1 sc0 ls0 ws0">中</div><div class="t m0 x2 h9 ya ff2 fs7 fc0 sc0 ls0 ws0">中</div><div class="t m0 x9 h9 y9 ff2 fs7 fc1 sc0 ls0 ws0">文</div><div class="t m0 xa h9 ya ff2 fs7 fc0 sc0 ls0 ws0">文</div><div class="t m0 xb h9 y9 ff2 fs7 fc1 sc0 ls0 ws0">版</div><div class="t m0 xc h9 ya ff2 fs7 fc0 sc0 ls0 ws0">版</div><div class="t m0 xd ha y9 ff3 fs7 fc1 sc0 ls0 ws0"> </div><div class="t m0 xe ha ya ff3 fs7 fc0 sc0 ls0 ws0"> </div><div class="t m0 xf hb yb ff3 fs8 fc0 sc0 ls2 ws0"> <span class="ff2 fs3 ls0">潘爱民<span class="ff3 ls3"> </span>张丽<span class="ff3"> <span class="_ _2"> </span></span>译<span class="ff3"> </span></span></div><div class="t m0 x2 hc yc ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc yd ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc ye ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc yf ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y10 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y11 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y12 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y13 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y14 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y15 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y16 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y17 ff4 fs3 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 hc y18 ff4 fs3 fc0 sc0 ls0 ws0">Addison-Wesley<span class="ff3 ls3"> </span></div><div class="t m0 x10 hd y19 ff3 fs1 fc0 sc0 ls0 ws0"> </div><div class="t m0 x11 he y1a ff2 fs5 fc0 sc0 ls4 ws0">中国电力出版社<span class="_ _3"></span><span class="ff3 ls1"> </span></div><div class="t m0 x11 h7 y1b ff3 fs5 fc0 sc0 ls5 ws0">www<span class="_ _4"></span>.infopo<span class="_ _5"></span>wer<span class="_ _4"></span>.com.cn</div><div class="t m0 x12 hf y1c ff5 fs4 fc0 sc0 ls6 ws1">Stanley B Lippman</div><div class="t m0 x12 hf y1d ff5 fs4 fc0 sc0 ls7 ws2">Josée Lajoie</div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
</body>
</html>
<div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/bg2.jpg"><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0"> </div><div class="t m1 x13 h10 y1e ff6 fs8 fc0 sc0 ls0 ws0">译序 </div><div class="t m0 x2 h11 y1f ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h11 y20 ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h12 y21 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">这是我心仪已久的一本书<span class="_"> </span>我相信很多读者也有同样的感受<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y22 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls9">在所有的编程语言中<span class="_"> </span></span><span class="ls0">C++<span class="ff7 ls9">可以说是最为复杂的<span class="_"> </span>它既是一门传统的编程语言<span class="_"> </span>也是一门</span></span></div><div class="t m0 x2 h12 y23 ff7 fs5 fc0 sc0 ls0 ws0">新的编程语言<span class="_"> </span>说它是一门传统语言<span class="_"> </span>是因为<span class="_ _6"> </span><span class="ff4">C++</span>诞生已将近<span class="_ _6"> </span><span class="ff4">20<span class="_ _6"> </span></span>年的历史了<span class="_"> </span>特别是最近<span class="_ _6"> </span><span class="ff4">10</span></div><div class="t m0 x2 h12 y24 ff7 fs5 fc0 sc0 ls0 ws0">年来<span class="_ _7"> </span><span class="ff4">C++</span>得到了快速的发展<span class="_"> </span><span class="ff4">C++</span>是计算机软件领域中覆盖面最为广阔的编程语言<span class="_"> </span>并且<span class="_"> </span>与</div><div class="t m0 x2 h12 y25 ff4 fs5 fc0 sc0 ls0 ws0">C++<span class="ff7">相关的智力投入也是其他任何一门语言所无法比拟的<span class="_"> </span>人们对于<span class="_ _7"> </span></span>C++<span class="ff7">的研究已经远远超出</span></div><div class="t m0 x2 h12 y26 ff7 fs5 fc0 sc0 ls0 ws0">了对于一门编程语言所应有的关注<span class="_"> </span>所以<span class="_"> </span>现在的<span class="_ _7"> </span><span class="ff4">C++</span>已经非常成熟<span class="_"> </span>有大量的资源<span class="_"> </span>文档</div><div class="t m0 x2 h12 y27 ff7 fs5 fc0 sc0 ls0 ws0">书籍<span class="_ _8"> </span>源代码等等<span class="_ _8"> </span>可供我们使用<span class="_ _8"> </span>说<span class="_ _7"> </span><span class="ff4">C++</span>是一门新的编程语言<span class="_ _8"> </span>是因为在<span class="_ _9"> </span><span class="ff4">1998<span class="_"> </span></span>年<span class="_ _9"> </span><span class="ff4">C++</span>由<span class="_ _7"> </span><span class="ff4 lsa">ISO</span></div><div class="t m0 x14 h12 y28 ff4 fs5 fc0 sc0 lsb ws3">International Standards Organization<span class="_ _a"> </span><span class="ff7 ls0 ws0">完成了标准化<span class="_"> </span>从此<span class="_ _9"> </span><span class="ff4">C++</span>领域有了统一的标准<span class="_"> </span>所</span></div><div class="t m0 x2 h12 y29 ff7 fs5 fc0 sc0 ls0 ws0">有的编译器都将向标准靠拢<span class="_ _b"> </span>或者说<span class="_ _b"> </span>与标准兼容<span class="_ _c"> </span>这有利于我们写出可移植的<span class="_ _9"> </span><span class="ff4">C++</span>代码来</div><div class="t m0 x2 h12 y2a ff7 fs5 fc0 sc0 ls0 ws0">同时<span class="_ _9"> </span><span class="ff4">C++</span>标准也统一了<span class="_ _7"> </span><span class="ff4">C++</span>标准库<span class="_ _8"> </span>为<span class="_ _9"> </span><span class="ff4 lsc">C++</span>用户提供了最为基本的基础设施<span class="_ _8"> </span><span class="ff4">C++</span>经历了多年</div><div class="t m0 x2 h12 y2b ff7 fs5 fc0 sc0 ls0 ws0">的发展<span class="_"> </span>终于有了一个相对稳定的版本<span class="_ _b"> </span>所以<span class="_ _b"> </span>我们应该用一种新的眼光来看待<span class="_ _9"> </span><span class="ff4">C++<span class="_ _b"> </span></span>而不再</div><div class="t m0 x2 h12 y2c ff7 fs5 fc0 sc0 ls0 ws0">简单地把<span class="_ _9"> </span><span class="ff4">C++</span>认为是<span class="_ _7"> </span><span class="ff4">C<span class="_"> </span></span>语言的超集<span class="_ _8"> </span>本书正是新版本<span class="_ _7"> </span><span class="ff4">C++</span>的写照<span class="_ _8"> </span>通过本书<span class="_ _8"> </span>你可以重新审视</div><div class="t m0 x2 h12 y2d ff4 fs5 fc0 sc0 ls0 ws0">C++<span class="ff7">语言<span class="_"> </span>这是我翻译过程中最为真切的体会<span class="_"> </span>它纠正了我过去对于<span class="_ _9"> </span></span>C++<span class="ff7">语言的一些误解<span class="_"> </span>虽</span></div><div class="t m0 x2 h12 y2e ff7 fs5 fc0 sc0 ls0 ws0">然我从<span class="_ _d"> </span><span class="ff4">1993<span class="_ _d"> </span></span>年开始就一直在使用<span class="_ _d"> </span><span class="ff4">C++<span class="_ _a"> </span></span>但是直到阅读了这本书之后<span class="_"> </span>我才从真正意义上全面</div><div class="t m0 x2 h12 y2f ff7 fs5 fc0 sc0 ls0 ws0">地认识了<span class="_ _9"> </span><span class="ff4">C++</span>语言<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y30 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 lsd">本书的权威性无需我多说<span class="_"> </span><span class="lse">看看本书原著的前言<span class="_"> </span><span class="lsf">了解了两位作者的背景之后<span class="_"> </span><span class="ls10">你就可以</span></span></span></span></div><div class="t m0 x2 h12 y31 ff7 fs5 fc0 sc0 ls0 ws0">知道<span class="_ _e"> </span>这本书是经验和标准的完美结合<span class="_ _e"> </span><span class="ff4 ls11 ws4">Stanley Lippman<span class="_"> </span></span>从<span class="_ _9"> </span><span class="ff4">1984<span class="_"> </span></span>年开始一直从事<span class="_ _7"> </span><span class="ff4">C++</span>方面的</div><div class="t m0 x2 h12 y32 ff7 fs5 fc0 sc0 ls12 ws0">工作<span class="_"> </span><span class="ls0">在<span class="_ _f"> </span><span class="ff4">C++</span><span class="ls13">的实现与应用方面有着丰富的经验<span class="_"> </span><span class="ls14">本书前两个版本的成功<span class="ls15">也证明了他在阐释</span></span></span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y33 ff4 fs5 fc0 sc0 ls0 ws0">C++<span class="ff7">语言方面的独到之处<span class="_"> </span></span><span class="lsb ws5">Josée Lajoie<span class="_ _9"> </span></span><span class="ff7">从<span class="_ _7"> </span></span>1990<span class="_"> </span><span class="ff7">年开始成为<span class="_ _9"> </span></span>C++<span class="ff7">标准委员会的一名成员<span class="_"> </span>并且</span></div><div class="t m0 x2 h12 y34 ff7 fs5 fc0 sc0 ls0 ws0">承担了很重要的职务<span class="_"> </span>由于她的参与<span class="_"> </span>毫无疑问<span class="_"> </span>本书一定是与标准兼容的<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y35 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">讲述<span class="_ _9"> </span><span class="ff4">C++</span>的书非常多<span class="_ _10"> </span>并且不乏优秀和经典之作<span class="_ _10"> </span>在如此众多的<span class="_ _9"> </span><span class="ff4">C++</span>书籍中<span class="_ _10"> </span>本书仍具有</span></div><div class="t m0 x2 h12 y36 ff7 fs5 fc0 sc0 ls0 ws0">不可替代的地位<span class="_"> </span>我想主要的原因在于本书具有以下几个特色<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y37 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="_ _a"> </span><span class="ls0">l<span class="_ _b"> </span><span class="ff7">内容广阔<span class="_ _b"> </span>从本书的规模<span class="_"> </span>厚度<span class="_ _b"> </span>就可以看出这一点<span class="_ _b"> </span></span><span class="lsc">C++</span><span class="ff7">语言融入了大量优秀的特</span></span></div><div class="t m0 x2 h12 y38 ff7 fs5 fc0 sc0 ls0 ws0">性<span class="_ _11"> </span>其内容的丰富程度已经远非<span class="_ _9"> </span><span class="ff4">C<span class="_"> </span></span>语言所能及<span class="_ _11"> </span>在所有的<span class="_ _7"> </span><span class="ff4">C++</span>书籍中<span class="_ _11"> </span>本书的覆盖面是最为广</div><div class="t m0 x2 h12 y39 ff7 fs5 fc0 sc0 ls0 ws0">阔的<span class="_ _8"> </span>从最基本的<span class="_ _7"> </span><span class="ff4">C++</span>程序设计<span class="_ _8"> </span>到面向对象程序设计<span class="_ _12"> </span>以及基于模板的程序设计<span class="_ _8"> </span>面面俱到</div><div class="t m0 x2 h12 y3a ff7 fs5 fc0 sc0 ls0 ws0">而且讲解细致入微<span class="_"> </span>值得仔细品味<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y3b ff4 fs5 fc0 sc0 ls8 ws0"> <span class="_ _a"> </span><span class="ls0">2<span class="_ _13"> </span><span class="ff7">许多实际的范例程序<span class="_ _13"> </span>纯粹的技术讲解总是非常枯燥的<span class="_ _13"> </span>但是阅读本书并不感觉枯燥</span></span></div><div class="t m0 x2 h12 y3c ff7 fs5 fc0 sc0 ls16 ws0">因为作者在介绍每一部分内容<span class="ls17">的时候都结合一个实际的例子<span class="_"> </span></span>读者通过这些例子能够很容易<span class="_ _14"></span>地</div><div class="t m0 x2 h12 y3d ff7 fs5 fc0 sc0 ls18 ws0">掌握相应的技术要点<span class="_"> </span><span class="ls19">并且看到每一种技术的实际用法<span class="_"> </span><span class="ls1a">这是本书之所以引人入胜的重要原因</span></span></div><div class="t m0 x2 h12 y3e ff7 fs5 fc0 sc0 ls0 ws0">之一<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x15 h12 y3f ff4 fs5 fc0 sc0 ls0 ws0">3<span class="_ _15"> </span><span class="ff7">叙述内容的安排<span class="_ _15"> </span></span>C++<span class="ff7">是一门多风格的程序设计语言<span class="_ _15"> </span></span><span class="ls1b ws6">multi-paradigm Programming </span></div><div class="t m0 x2 h12 y40 ff4 fs5 fc0 sc0 ls1c ws0">language<span class="_ _16"> </span><span class="ff7 ls0">不仅支持面向对象程序设计<span class="_ _8"> </span>也支持其他的程序设计思想<span class="_ _8"> </span>本书的叙述结构正体现</span></div><div class="t m0 x2 h12 y41 ff7 fs5 fc0 sc0 ls0 ws0">了<span class="_ _9"> </span><span class="ff4">C++</span>的这种特点<span class="_ _12"> </span>作者从程序设计思想的角度分别讲述了<span class="_ _7"> </span><span class="ff4">C++</span>的各种语言要素<span class="_ _12"> </span>便读者比较<span class="ff4"> </span></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
<div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/bg3.jpg"><div class="t m0 x16 h13 y42 ff1 fs9 fc0 sc0 ls1d ws0">I<span class="_ _17"></span>I<span class="_ _17"></span> <span class="ff7 ls1e">译序</span><span class="ls0"> </span></div><div class="t m0 x2 h12 y43 ff7 fs5 fc0 sc0 ls0 ws0">容易抓住<span class="_ _9"> </span><span class="ff4">C++</span>语言的本质特征<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y44 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="_ _a"> </span><span class="ls0">4<span class="_ _a"> </span><span class="ff7">与编译器无关<span class="_"> </span>遵从<span class="_ _d"> </span></span>C++<span class="ff7">标准<span class="_"> </span>本书的内容并不特定于某一个<span class="_ _18"> </span></span>C++<span class="ff7">编译器实现<span class="_"> </span>而</span></span></div><div class="t m0 x2 h12 y45 ff7 fs5 fc0 sc0 ls0 ws0">是适用于所有与<span class="_ _9"> </span><span class="ff4">C++</span>标准兼容的编译器<span class="_"> </span>作者在讲解过程中也指出了编译器的一些内部考虑</div><div class="t m0 x2 h12 y46 ff7 fs5 fc0 sc0 ls9 ws0">例如<span class="_"> </span><span class="ls17">编译器如何在各种上下文环境中解析重载函数<span class="_"> </span><span class="ls1f">如何处理除式类型转换<span class="_"> </span><span class="ls0">等等<span class="_"> </span><span class="ls20">这些内</span></span></span></span></div><div class="t m0 x2 h12 y47 ff7 fs5 fc0 sc0 ls0 ws0">容有利于加深读者对<span class="_ _9"> </span><span class="ff4">C++</span>的理解<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y48 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="_ _a"> </span><span class="ls0">5<span class="_ _11"> </span><span class="ff7">配套的练习<span class="_ _12"> </span>在每一节讲解之后<span class="_ _11"> </span>作者给出了一些练习<span class="_ _11"> </span>这些练习反映了这一节的中</span></span></div><div class="t m0 x2 h12 y49 ff7 fs5 fc0 sc0 ls18 ws0">心内容<span class="_"> </span><span class="ls21">读者通过这些练习可以巩固所学的知识<span class="_"> </span><span class="ls9">所以<span class="_"> </span><span class="ls1a">本书也可以被用作教材<span class="_"> </span></span></span></span>用于系统全</div><div class="t m0 x2 h12 y4a ff7 fs5 fc0 sc0 ls0 ws0">面地学习<span class="_ _9"> </span><span class="ff4">C++</span>语言<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y4b ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls22">虽然本书书名<span class="_"> </span></span><span class="ls1b ws7">C++ Primer<span class="_ _a"> </span></span><span class="ff7 ls22">的中文含义是<span class="_"> </span></span><span class="ls0">C++<span class="_ _14"></span><span class="ff7 ls9">初级读本<span class="_ _19"> </span><span class="ls23">但是它绝对不是一本很轻</span></span></span></div><div class="t m0 x2 h12 y4c ff7 fs5 fc0 sc0 ls24 ws0">松的入门教材<span class="_"> </span><span class="ls25">特别是关于名字空间<span class="_"> </span><span class="ls26">函数重载解析过程<span class="_"> </span><span class="ls27">模板机制和泛型算法<span class="_"> </span><span class="ff4 ls28">generi<span class="_ _5"></span>c </span></span></span></span></div><div class="t m0 x2 h12 y4d ff4 fs5 fc0 sc0 ls5 ws0">algorithms<span class="_ _b"> </span><span class="ff7 ls0">等内容并不是一个<span class="_ _9"> </span><span class="ff4">C++</span>初学者能够很快掌握的<span class="_"> </span>如果你以前没有看过其他的<span class="_ _9"> </span><span class="ff4">C++</span></span></div><div class="t m0 x2 h12 y4e ff7 fs5 fc0 sc0 ls0 ws0">书籍<span class="_ _b"> </span>那么可能需要反复阅读多遍才能掌握本书讲述的内容<span class="_ _b"> </span>如果你已经有了<span class="_ _9"> </span><span class="ff4">C++</span>的基础<span class="_"> </span>比</div><div class="t m0 x2 h12 y4f ff7 fs5 fc0 sc0 ls0 ws0">如<span class="_"> </span>已经看过其他的<span class="_ _18"> </span><span class="ff4">C++</span>入门书籍<span class="_ _19"> </span>那么阅读本书可以让你快速掌握<span class="_ _d"> </span><span class="ff4">C++</span>的要点<span class="_"> </span>如果你是</div><div class="t m0 x2 h12 y50 ff7 fs5 fc0 sc0 ls0 ws0">一名有多年<span class="_ _9"> </span><span class="ff4">C++</span>实践经验的程序员<span class="_ _10"> </span>那么阅读本书可以让你重新理解<span class="_ _9"> </span><span class="ff4">C++<span class="_ _10"> </span></span>总之<span class="_ _11"> </span>这是一本很</div><div class="t m0 x2 h12 y51 ff7 fs5 fc0 sc0 ls18 ws0">好的学习和参考书籍<span class="_"> </span>值得你反复阅读<span class="_"> </span><span class="ls0">但是<span class="_"> </span><span class="ls29">正如书名所指示的<span class="_"> </span><span class="ls2a">它不是一本高级书籍<span class="_"> </span></span></span>按</span></div><div class="t m0 x2 h12 y52 ff7 fs5 fc0 sc0 ls0 ws0">照我个人理解<span class="_"> </span>它的技术水准应该在中等偏深一点的层次上<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y53 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls2b">本书的翻译工作由我和张丽共同完成<span class="_"> </span><span class="lsf">张丽完成了初稿的翻译工作<span class="_"> </span><span class="ls2a">我做了第二遍翻译检</span></span></span></div><div class="t m0 x2 h12 y54 ff7 fs5 fc0 sc0 ls9 ws0">查工作<span class="_"> </span>书中每一句话我都认真检查过<span class="_"> </span>个别地方还修改了原著的一些错误<span class="_"> </span><span class="ff4 lsc">C++</span><span class="ls2c">中有些术语</span></div><div class="t m0 x2 h12 y55 ff7 fs5 fc0 sc0 ls1a ws0">还没有统一的中文说法<span class="_"> </span><span class="ls2d">对于这些术语的处理<span class="_"> </span><span class="ls17">我们尽可能地做到符合中文的语言习惯<span class="_"> </span><span class="ls2e">读者</span></span></span></div><div class="t m0 x2 h12 yf ff7 fs5 fc0 sc0 ls1f ws0">可以参考本书最后所附的英汉对照索引<span class="_"> </span><span class="ls21">这份索引是由中国电力出版社的诸位编辑手工制作完</span></div><div class="t m0 x2 h12 y56 ff7 fs5 fc0 sc0 ls0 ws0">成的<span class="_ _b"> </span>他们是刘江<span class="_ _b"> </span>朱恩从<span class="_ _10"> </span>陈维宁<span class="_"> </span>程璐<span class="_ _10"> </span>关敏<span class="_ _b"> </span>刘君<span class="_ _b"> </span>夏平<span class="_ _b"> </span><span class="ls2f">宋宏<span class="_ _10"> </span></span>姚贵胜<span class="_"> </span>常虹<span class="_ _10"> </span><span class="ls2f">乔晶</span></div><div class="t m0 x2 h12 y57 ff7 fs5 fc0 sc0 ls0 ws0">阎宏<span class="_"> </span>感谢他<span class="_"> </span>她<span class="_"> </span>们的辛勤劳动<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y58 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls30">在翻译过程中<span class="_"> </span><span class="ls31">不断收到读者来信或者来<span class="ls32">电询问这本书的出版情况<span class="_"> </span><span class="ls2a">我理解读者对于一本</span></span></span></span></div><div class="t m0 x2 h12 y59 ff7 fs5 fc0 sc0 ls0 ws0">好书的迫切心情<span class="_ _10"> </span>我的想法是<span class="_ _10"> </span>有关<span class="_ _7"> </span><span class="ff4">C++</span>的书籍和资料如此之多<span class="_ _10"> </span>所以<span class="_ _b"> </span>学习<span class="_ _9"> </span><span class="ff4">C++</span>不一定非要</div><div class="t m0 x2 h12 y5a ff7 fs5 fc0 sc0 ls0 ws0">阅读这本书<span class="_ _b"> </span>但是它可以加快你学习的步伐<span class="_ _b"> </span>并且帮助你深入而全面地理解<span class="_ _9"> </span><span class="ff4">C++<span class="_ _b"> </span></span>既然你已经</div><div class="t m0 x2 h12 y5b ff7 fs5 fc0 sc0 ls0 ws0">看到了这本书<span class="_"> </span>那就不要错过吧<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y5c ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">这本书不会让你失望的<span class="_"> </span>我坚信这一点<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h11 y5d ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h11 y5e ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h11 y5f ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h12 y60 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">潘爱民<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y61 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">北京大学燕北园 </span></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
<div id="pf4" class="pf w0 h0" data-page-no="4"><div class="pc pc4 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/bg4.jpg"><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0"> </div><div class="t m0 x17 h14 y62 ff8 fs9 fc2 sc0 ls0 ws0"> </div><div class="t m0 x17 h14 y63 ff8 fs9 fc2 sc0 ls0 ws0"> </div><div class="t m0 x17 h14 y64 ff8 fs9 fc2 sc0 ls0 ws0"> </div><div class="t m1 x13 h10 y65 ff6 fs8 fc0 sc0 ls0 ws0">前言 </div><div class="t m0 x2 h11 y22 ff4 fs5 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h12 y23 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">本书第二版和第三版之间的变化非常大<span class="_"> </span>其中最值得注意的是<span class="_"> </span><span class="ff4">C++</span>已经通过了国际标<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y24 ff7 fs5 fc0 sc0 ls0 ws0">准化<span class="_"> </span>这不但为语言增加了新的特性<span class="_"> </span>比如异常处理<span class="_"> </span>运行时刻类型识别<span class="_"> </span><span class="ff4 ls1f">RTTI<span class="_ _c"> </span></span>名字空<span class="ff4"> </span></div><div class="t m0 x2 h12 y25 ff7 fs5 fc0 sc0 ls0 ws0">间<span class="_"> </span>内置布尔数据类型<span class="_"> </span>新的强制转换方式<span class="_"> </span>而且还大量修改并扩展了现有的特性<span class="_"> </span>比如模<span class="ff4"> </span></div><div class="t m0 x2 h12 y26 ff7 fs5 fc0 sc0 ls0 ws0">板<span class="_"> </span><span class="ff4 ls5">template<span class="_ _19"> </span></span>支持面向对象<span class="_"> </span><span class="ff4 ls1b">object-oriented<span class="_ _b"> </span></span>和基于对象<span class="_"> </span><span class="ff4 ls33">object-based<span class="_ _a"> </span></span>程序设计所需<span class="ff4"> </span></div><div class="t m0 x2 h12 y27 ff7 fs5 fc0 sc0 ls0 ws0">要的类<span class="_"> </span><span class="ff4 ls34">class<span class="_ _a"> </span></span>机制<span class="_"> </span>嵌套类型以及重载函数的解析机制<span class="_"> </span>也许更重要的是<span class="_"> </span>一个覆盖面非<span class="ff4"> </span></div><div class="t m0 x2 h12 y28 ff7 fs5 fc0 sc0 ls0 ws0">常广阔的库现在成了标准<span class="_ _9"> </span><span class="ff4">C++</span>的一部分<span class="_"> </span>其中包括以前称为<span class="_ _7"> </span><span class="ff4 ls35">STL<span class="_ _a"> </span></span>标准模板库<span class="_"> </span>的内容<span class="_"> </span>新<span class="ff4"> </span></div><div class="t m0 x2 h12 y29 ff7 fs5 fc0 sc0 ls0 ws0">的<span class="_ _9"> </span><span class="ff4 ls36">string<span class="_"> </span></span>类型<span class="_"> </span>一组顺序和关联容器类型<span class="_"> </span>比如<span class="_ _7"> </span><span class="ff4 ls37">vector<span class="_ _a"> </span><span class="ls5">list<span class="_ _a"> </span><span class="ls38">map<span class="_"> </span></span></span></span>和<span class="_ _9"> </span><span class="ff4 ls38">set<span class="_ _19"> </span></span>以及在这些类型<span class="ff4"> </span></div><div class="t m0 x2 h12 y2a ff7 fs5 fc0 sc0 ls0 ws0">上进行操作的一组可扩展的泛型算法<span class="_"> </span><span class="ff4 ls39 ws8">generic algorithm<span class="_ _19"> </span></span>都是这个新标准库的特性<span class="_"> </span>本书<span class="ff4"> </span></div><div class="t m0 x2 h12 y2b ff7 fs5 fc0 sc0 ls0 ws0">不但包括了许多新的资料<span class="_"> </span>而且还阐述了怎样在<span class="_ _9"> </span><span class="ff4">C++</span>中进行程序设计的新的思考方法<span class="_"> </span>简而<span class="ff4"> </span></div><div class="t m0 x2 h12 y2c ff7 fs5 fc0 sc0 ls0 ws0">言之<span class="_"> </span>实际上<span class="_"> </span>不但<span class="_ _9"> </span><span class="ff4">C++</span>已经被重新创造<span class="_"> </span>本书第三版也是如此<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y2d ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">在第三版中<span class="_"> </span>不但对语言的处理方式发生了根本的变化<span class="_"> </span>而且作者本身也发生了变化<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y2e ff7 fs5 fc0 sc0 ls0 ws0">首先<span class="_"> </span>我们的人数已经加倍<span class="_"> </span>而且<span class="_"> </span>我们的写作过程也已经国际化了<span class="_"> </span>尽管我们还牢牢扎根<span class="ff4"> </span></div><div class="t m0 x2 h12 y2f ff7 fs5 fc0 sc0 ls0 ws0">于北美大陆<span class="_ _19"> </span><span class="ff4 ls39 ws8">Stan Lippman<span class="_"> </span></span>是美国人<span class="_"> </span><span class="ff4 lsb ws9">Josée Lajoie<span class="_"> </span></span>是加拿大人<span class="_"> </span>最后<span class="_"> </span>这种双作者关系也<span class="ff4"> </span></div><div class="t m0 x2 h12 y30 ff7 fs5 fc0 sc0 ls0 ws0">反映了<span class="_ _9"> </span><span class="ff4">C++</span>团体的两类主要活动<span class="_"> </span><span class="ff4 ls5">Stan<span class="_"> </span></span>现在正在迪斯尼动画公司<span class="_"> </span><span class="ff4 ls37 wsa">Walt Disney Feature </span></div><div class="t m0 x2 h11 y31 ff4 fs5 fc0 sc0 ls11 ws0">Animation</div><div class="t m0 x18 h15 y66 ff4 fsa fc0 sc0 ls0 ws0">*</div><div class="t m0 x19 h12 y31 ff7 fs5 fc0 sc0 ls0 ws0">致力于以<span class="_ _9"> </span><span class="ff4">C++</span>为基础的<span class="_ _7"> </span><span class="ff4">3D<span class="_"> </span></span>计算机图形和动画应用<span class="_"> </span>而<span class="_ _9"> </span><span class="ff4 ls33">Josée<span class="_"> </span></span>正专心于<span class="_ _7"> </span><span class="ff4">C++</span>的定<span class="ff4"> </span></div><div class="t m0 x2 h12 y32 ff7 fs5 fc0 sc0 ls0 ws0">义与实现<span class="_"> </span>同时她也是<span class="_ _9"> </span><span class="ff4">C++</span>标准的核心语言小组的主席</div><div class="t m0 x1a h15 y67 ff4 fsa fc0 sc0 ls3a ws0">**</div><div class="t m0 x1b h12 y32 ff7 fs5 fc0 sc0 ls0 ws0">以及<span class="_ _9"> </span><span class="ff4 ls3b">IBM<span class="_"> </span></span>加拿大实验室的<span class="_ _7"> </span><span class="ff4">C++</span>编<span class="ff4"> </span></div><div class="t m0 x2 h12 y33 ff7 fs5 fc0 sc0 ls0 ws0">译器组的成员<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y34 ff4 fs5 fc0 sc0 ls8 ws0"> S<span class="_ _1a"></span>t<span class="_ _1a"></span>a<span class="_ _1a"></span>n<span class="ff7 ls0">是<span class="_ _9"> </span></span><span class="ls3c">Bell<span class="_"> </span><span class="ff7 ls0">实验室中与<span class="_ _9"> </span></span><span class="ls3d wsb">Bjarne Stroustrup<span class="_ _a"> </span></span><span class="ls0">C++<span class="ff7">的发明者<span class="_"> </span>一起工作的早期成员之一<span class="_"> </span></span> </span></span></div><div class="t m0 x2 h12 y35 ff7 fs5 fc0 sc0 ls0 ws0">从<span class="_ _9"> </span><span class="ff4">1984<span class="_"> </span></span>年开始一直从事<span class="_ _7"> </span><span class="ff4">C++</span>方面的工作<span class="_"> </span><span class="ff4 ls5">Stan<span class="_"> </span></span>曾经致力于原始<span class="_ _9"> </span><span class="ff4">C++</span>编译器<span class="_ _9"> </span><span class="ff4 ls5">cfront<span class="_"> </span></span>的各种实<span class="ff4"> </span></div><div class="t m0 x2 h12 y36 ff7 fs5 fc0 sc0 ls0 ws0">现<span class="_"> </span>从<span class="_ _9"> </span><span class="ff4">1986<span class="_"> </span></span>年的版本<span class="_ _7"> </span><span class="ff4">1.1<span class="_"> </span></span>到版本<span class="_ _9"> </span><span class="ff4">3.0<span class="_ _a"> </span></span>并领导了<span class="_ _9"> </span><span class="ff4">2.1<span class="_"> </span></span>和<span class="_ _7"> </span><span class="ff4">3.0<span class="_"> </span></span>版本的开发组<span class="_"> </span>之后<span class="_"> </span>他参与了<span class="ff4"> </span></div><div class="t m0 x2 h12 y37 ff4 fs5 fc0 sc0 ls34 ws0">Stroustrup<span class="_"> </span><span class="ff7 ls0">领导的<span class="_"> </span></span><span class="ls37 wsa">Foundation Research Project<span class="_"> </span></span><span class="ff7 ls0">项目中关于程序设计环境的对象模型部分<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y38 ff4 fs5 fc0 sc0 ls8 ws0"> J<span class="_ _1a"></span>o<span class="_ _1a"></span>s<span class="_ _1a"></span>é<span class="_ _1a"></span>e<span class="ff7 ls0">作为<span class="_ _9"> </span></span><span class="ls3b">IBM<span class="_"> </span><span class="ff7 ls0">加拿大实验室<span class="_ _7"> </span><span class="ff4">C++</span>编译器组的成员已经有八年时间了<span class="_"> </span>从<span class="_ _9"> </span><span class="ff4">1990<span class="_"> </span></span>年开始她<span class="ff4"> </span></span></span></div><div class="t m0 x2 h12 y39 ff7 fs5 fc0 sc0 ls0 ws0">成为<span class="_ _9"> </span><span class="ff4">C++</span>标准委员会的成员<span class="_"> </span>她曾经担任委员会的副主席三年<span class="_"> </span>日前担任核心语言小组委员<span class="ff4"> </span></div><div class="t m0 x2 h12 y3a ff7 fs5 fc0 sc0 ls0 ws0">会的主席已经达四年之久<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y3b ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">本书第三版是一个大幅修订的版本<span class="_"> </span>不仅反映了语言的变化和扩展<span class="_"> </span>也反映了作者洞察<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y3c ff7 fs5 fc0 sc0 ls0 ws0">力和经验的变化<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h16 y68 ff1 fs9 fc0 sc0 ls3e ws0"> <span class="_ _4"></span><span class="ls0"> </span></div><div class="t m0 x2 h17 y69 ff4 fs6 fc0 sc0 ls0 ws0">*</div><div class="t m0 x8 h18 y6a ff4 fs0 fc0 sc0 ls3f wsc"> Stan Lippman<span class="_"> </span><span class="ff9 ls0 ws0">现已受雇于<span class="_ _1b"> </span><span class="ff4 ls40">Microsoft</span></span></div><div class="t m0 x1c h18 y6b ff9 fs0 fc0 sc0 ls0 ws0">成为<span class="_ _1b"> </span><span class="ff4 ls41 wsd">Visual C++ .Net<span class="_"> </span></span>的架构设计师</div><div class="t m0 x1d h2 y6a ff1 fs0 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h17 y6c ff4 fs6 fc0 sc0 ls34 ws0">**</div><div class="t m0 x1e h18 y6d ff4 fs0 fc0 sc0 ls42 wse"> Josée Lajoie<span class="_"> </span><span class="ff9 ls0 ws0">现正在滑铁卢大学攻读硕士学位<span class="ff4">.</span>已不再担任该委员会的主席</span></div><div class="t m0 x1f h18 y6e ff9 fs0 fc0 sc0 ls0 ws0">现任主席为<span class="_ _1b"> </span><span class="ff4 ls43">Sun<span class="_"> </span></span>公司的<span class="_ _1b"> </span><span class="ff4 ls44">Steve </span></div><div class="t m0 x2 h19 y6f ff4 fs0 fc0 sc0 ls45 wsf"> Clamage<span class="_ _1c"> </span><span class="ls0 ws0"> </span></div><div class="t m0 x2 h19 y70 ff4 fs0 fc0 sc0 ls0 ws0"> </div><div class="t m0 x2 h2 y71 ff1 fs0 fc0 sc0 ls0 ws0"> </div><a class="l" rel='nofollow' onclick='return false;'><div class="d m2"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m2"></div></a></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
<div id="pf5" class="pf w0 h0" data-page-no="5"><div class="pc pc5 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626302654c65f412598d77af/bg5.jpg"><div class="t m0 x20 h13 y42 ff1 fs9 fc0 sc0 ls1d ws0">I<span class="_ _17"></span>V<span class="_ _17"></span> <span class="ff7 ls1e">译序</span><span class="ls0"> </span></div><div class="t m0 x2 h1a y72 ff2 fsb fc0 sc1 ls2e ws0">本书的结构 </div><div class="t m0 x2 h12 y73 ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">本书为<span class="_ _9"> </span><span class="ff4">C++</span>国际标准进行了全面的介绍<span class="_"> </span>在此意义上<span class="_"> </span>它是一个初级读本<span class="_"> </span></span><span class="ls34">primer<span class="_ _19"> </span><span class="ls0"> </span></span></div><div class="t m0 x2 h12 y74 ff7 fs5 fc0 sc0 ls0 ws0">它提供了一种指导性的方法来描述<span class="_ _9"> </span><span class="ff4">C++</span>语言<span class="_ _19"> </span>但是<span class="_"> </span>它也为<span class="_ _9"> </span><span class="ff4">C++</span>语言提供了一种简单而温<span class="ff4"> </span></div><div class="t m0 x2 h12 y75 ff7 fs5 fc0 sc0 ls0 ws0">和的描述<span class="_"> </span>从这个角度来看<span class="_"> </span>它不是一本初级读物<span class="_ _19"> </span><span class="ff4">C++</span>语言的程序设计要素<span class="_"> </span>比如异常<span class="ff4"> </span></div><div class="t m0 x2 h12 y76 ff7 fs5 fc0 sc0 ls0 ws0">处理<span class="_"> </span>容器类型<span class="_"> </span>面向对象的程序设计等等<span class="_"> </span>都在解决特定问题或程序设计任务的上下文环<span class="ff4"> </span></div><div class="t m0 x2 h12 y77 ff7 fs5 fc0 sc0 ls0 ws0">境中展示出来<span class="_"> </span><span class="ff4">C++</span>语言的规则<span class="_"> </span>比如重载函数调用的解析过程以及在面向对象程序设计下<span class="ff4"> </span></div><div class="t m0 x2 h12 y78 ff7 fs5 fc0 sc0 ls0 ws0">支持的类型转换<span class="_"> </span>本书都有广泛的论述<span class="_"> </span>这似乎超出了一本初级读本的范畴<span class="_"> </span>我们相信<span class="_"> </span>为<span class="ff4"> </span></div><div class="t m0 x2 h12 y79 ff7 fs5 fc0 sc0 ls0 ws0">了加强读者对于<span class="_ _9"> </span><span class="ff4">C++</span>语言的理解<span class="_"> </span>覆盖这些内容是必要的<span class="_"> </span>对于这些材料<span class="_"> </span>读者应该不时地<span class="ff4"> </span></div><div class="t m0 x2 h12 y7a ff7 fs5 fc0 sc0 ls0 ws0">回头翻阅<span class="_"> </span>而不是一次消化了事<span class="_"> </span>如果开始的时候你发现这些内容比较难以接受或者过于枯<span class="ff4"> </span></div><div class="t m0 x2 h12 y7b ff7 fs5 fc0 sc0 ls0 ws0">燥<span class="_"> </span>请把它们放到一边<span class="_"> </span>以后再回头来看<span class="ff4">——</span>我们为这样的章节加上了特殊的记号<span class="_ _1d"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y7c ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">阅读本书不需要具备<span class="_ _9"> </span><span class="ff4">C<span class="_"> </span></span>语言的知识<span class="_"> </span>但是<span class="_"> </span>熟悉某些现代的结构化语言会使学习进展更<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y7d ff7 fs5 fc0 sc0 ls0 ws0">快一些<span class="_"> </span>本书的意图是作为学习<span class="_ _9"> </span><span class="ff4">C++</span>的第一本书<span class="_"> </span>而不是学习程序设计的第一本书<span class="_"> </span>为了确<span class="ff4"> </span></div><div class="t m0 x2 h12 y7e ff7 fs5 fc0 sc0 ls0 ws0">保这一点<span class="_"> </span>我们会以一个公共的词汇表作为开始<span class="_"> </span>然而<span class="_"> </span>开始的章节涵盖了一些基本的概念<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y7f ff7 fs5 fc0 sc0 ls0 ws0">比如循环语句和变量等<span class="_"> </span>有些读者可能会觉得这些概念太浅显了<span class="_"> </span>不必担心<span class="_"> </span>深层的内容很<span class="ff4"> </span></div><div class="t m0 x2 h12 y80 ff7 fs5 fc0 sc0 ls0 ws0">快就会看到<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y81 ff4 fs5 fc0 sc0 ls8 ws0"> C<span class="_ _1a"></span>+<span class="_ _1a"></span>+<span class="_ _1a"></span><span class="ff7 ls0">的许多威力来自于它对程序设计新方法的支持<span class="_"> </span>以及对程序设计问题的思考方式<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y82 ff7 fs5 fc0 sc0 ls0 ws0">因此<span class="_"> </span>要想有效地学习使用<span class="_ _9"> </span><span class="ff4">C++<span class="_ _a"> </span></span>不要只想简单地学会一组新的语法和语义<span class="_"> </span>为了使这种学<span class="ff4"> </span></div><div class="t m0 x2 h12 y83 ff7 fs5 fc0 sc0 ls0 ws0">习更加容易<span class="_"> </span>本书将围绕一系列可扩展的例子来组织内容<span class="_"> </span>这些例子被用来介绍各种语言特<span class="ff4"> </span></div><div class="t m0 x2 h12 y84 ff7 fs5 fc0 sc0 ls0 ws0">性的细节<span class="_"> </span>同时也说明了这些语言特性的动机所在<span class="_"> </span>当我们在一个完整例子的上下文环境中<span class="ff4"> </span></div><div class="t m0 x2 h12 y85 ff7 fs5 fc0 sc0 ls0 ws0">学习语言特性时<span class="_"> </span>对这些特性为什么会有用处也就变得很清楚了<span class="_"> </span>它会使我们对于<span class="_"> </span>何时以<span class="ff4"> </span></div><div class="t m0 x2 h12 y86 ff7 fs5 fc0 sc0 ls0 ws0">及怎样在实际的问题解决过程中使用这些特性<span class="_"> </span>有一些感觉<span class="_"> </span>另外<span class="_"> </span>把焦点放在例子上<span class="_"> </span>可<span class="ff4"> </span></div><div class="t m0 x2 h12 y87 ff7 fs5 fc0 sc0 ls0 ws0">使读者能够尽早地使用一些概念<span class="_"> </span>随着读者的知识基础被建立起来之后<span class="_"> </span>这些概念会进一步<span class="ff4"> </span></div><div class="t m0 x2 h12 y88 ff7 fs5 fc0 sc0 ls0 ws0">完整地解释清楚<span class="_"> </span>本书前面的例子含有<span class="_ _9"> </span><span class="ff4">C++</span>基本概念的简单用法<span class="_"> </span>读者可以先领略一下<span class="_ _7"> </span><span class="ff4 ls3c">C++ </span></div><div class="t m0 x2 h12 y89 ff7 fs5 fc0 sc0 ls0 ws0">中程序设计的概貌<span class="_"> </span>而不要求完全理解<span class="_ _9"> </span><span class="ff4">C++</span>程序设计和实现的细节<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y8a ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">第<span class="_ _9"> </span><span class="ff4">1<span class="_"> </span></span>章和第<span class="_ _7"> </span><span class="ff4">2<span class="_"> </span></span>章形成了一个独立完整的<span class="_ _9"> </span><span class="ff4">C++</span>介绍和概述<span class="_"> </span>第一篇的目的是使我们快速地<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y8b ff7 fs5 fc0 sc0 ls0 ws0">理解<span class="_ _9"> </span><span class="ff4">C++</span>支持的概念和语言设施<span class="_"> </span>以及编写和执行一个程序所需要的基础知识<span class="_"> </span>读完这部分<span class="ff4"> </span></div><div class="t m0 x2 h12 y8c ff7 fs5 fc0 sc0 ls0 ws0">内容之后<span class="_"> </span>你应该对<span class="_ _9"> </span><span class="ff4">C++</span>语言有了一些认识<span class="_"> </span>但是还谈不上真正理解<span class="_ _7"> </span><span class="ff4">C++<span class="_ _a"> </span></span>这就够了<span class="_"> </span>那是<span class="ff4"> </span></div><div class="t m0 x2 h12 y8d ff7 fs5 fc0 sc0 ls0 ws0">本书余下部分的目的<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y8e ff4 fs5 fc0 sc0 ls8 ws0"> <span class="ff7 ls0">第<span class="_ _9"> </span><span class="ff4">1<span class="_"> </span></span>章向我们介绍了语言的基本元素<span class="_"> </span>内置数据类型<span class="_"> </span>变量<span class="_"> </span>表达式<span class="_"> </span>语句以及函数<span class="_"> </span><span class="ff4"> </span></span></div><div class="t m0 x2 h12 y8f ff7 fs5 fc0 sc0 ls0 ws0">它将介绍一个最小的<span class="_"> </span>合法的<span class="_ _9"> </span><span class="ff4">C++</span>程序<span class="_"> </span>简要讨论编译程序的过程<span class="_"> </span>介绍所谓的预处理器<span class="ff4"> </span></div><div class="t m0 x14 h12 y90 ff4 fs5 fc0 sc0 ls1b ws0">preprocessor<span class="_ _19"> </span><span class="ff7 ls0">以及对输入和输出的支持<span class="_"> </span>它给出了多个简单但却完整的<span class="_ _9"> </span><span class="ff4">C++</span>程序<span class="_"> </span>鼓励<span class="ff4"> </span></span></div><div class="t m0 x2 h12 y91 ff7 fs5 fc0 sc0 ls0 ws0">读者亲自编译并执行这些程序<span class="_"> </span>第<span class="_ _9"> </span><span class="ff4">2<span class="_"> </span></span>章介绍了<span class="_ _7"> </span><span class="ff4">C++</span>是如何通过类机制<span class="_"> </span>为基于对象和面向对<span class="ff4"> </span></div><div class="t m0 x2 h12 y92 ff7 fs5 fc0 sc0 ls0 ws0">象的程序设计提供支持的<span class="_"> </span>同时通过数组抽象的演化过程来说明这些设计思想<span class="_"> </span>另外<span class="_"> </span>它简<span class="ff4"> </span></div><div class="t m0 x2 h12 y93 ff7 fs5 fc0 sc0 ls0 ws0">要介绍了模板<span class="_"> </span>名字空间<span class="_"> </span>异常处理<span class="_"> </span>以及标准库为一般容器类型和泛型程序设计提供的支<span class="ff4"> </span></div><div class="t m0 x2 h12 y94 ff7 fs5 fc0 sc0 ls0 ws0">持<span class="_"> </span>这一章的进度比较快<span class="_"> </span>有些读者可能会觉得难以接受<span class="_"> </span>如果是这样<span class="_"> </span>我们建议你跳过这<span class="ff4"> </span></div><div class="t m0 x2 h12 y95 ff7 fs5 fc0 sc0 ls0 ws0">一章<span class="_"> </span>以后再回过头来看它<span class="_"> </span><span class="ff4"> </span></div><div class="t m0 x2 h12 y96 ff4 fs5 fc0 sc0 ls8 ws0"> C<span class="_ _1a"></span>+<span class="_ _1a"></span>+<span class="_ _1a"></span><span class="ff7 ls0">的基础是各种设施<span class="_"> </span>它们使用户能够通过定义新的数据类型来扩展语言本身<span class="_"> </span>这些<span class="ff4"> </span></span></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>