C++语言的设计与演化
2012-3
科学出版社
斯特劳斯特鲁普
裘宗燕
无
本书是C++的设计者关于c++语言的最主要著作之一。作者综合性地论述了c++的发展历史,c++中各种重要机制的本质意义和设计背景,这些机制的基本用途和使用方法,讨论了C++所适合的应用领域及其未来的发展前景。全共18章,分两大部分,其中第l部分(第1—9章)分别介绍了C++的史前时代、C
with
Classes、C++的诞生、C++语言设计规则、1985--1993年表、标准化、关注和使用、库、展望:第2部分(第10~18章)分别介绍了存储管理、重载、多重继承、类概念的精练、强制转换、模板、异常处理、名称空间、C语言预处理器。为便于查找与学习,全书最后附有专业术语索引。本书在帮助人们理解C++语言方面的作用是不可替代的。
本书面向每个学习和关注C++语言的专业工作者、科研人员、教师及学生。
作者:(美国)斯特劳斯特鲁普(Bjarne Stroustrup) 译者:裘宗燕斯特劳斯特鲁普(Bjarne Stroustrup)是C++的设计者和最初的实现者,也是《c++程序设计语言》(The C++ Programming Language)的作者。他是AT&T贝尔实验室大规模程序研究部的负责人,并因构筑c++程序设计语言基础的早期工作而获得了ACM 1993年度Grace Murray Hopper奖。Stroustrup博士拥有丹麦Aarhus大学硕士学位、英国剑桥大学博士学位,是ACM特别会员、AT&T贝尔实验室特别成员及AT&T特别成员。他的研究兴趣包括分布式系统、操作系统、模拟、设计和编程。
第0章致读者
第1部分
第1章C++的史前时代
1.1Simula~E1分布式系统
1.2 C与系统程序设计
1.3一般性的背景
第2章C with Classes
2.1C with Classes的诞生
2.2特征概览
2.3类
2.4运行时的效率
2.5连接模型
2.5.1纯朴的实现
2.5.2对象连接模型
2.6静态类型检查
2.6.1窄转换
2.6.2警告的使用
2.7为什么是仁
2.8语法问题
2.8.1C声明的语法
2.8.2结构标志与类型名
2.8.3语法的重要性
2.9派生类
2.9.1没有虚函数时的多态性
2.9.2没有模板时的容器类
2.9.3对象的布局模型
2.9.4回顾
2.10保护模型
2.11运行时的保证
……
第2部分
索引
版权页:插图:虽然支持模板的实现已经比较常见了,但它们还不是广泛可用的。进一步说,大部分实现还处在不够成熟的阶段,这种情况也限制了模板对人们思考C++和程序设计时可能产生的影响。ANSI/ISO对各种黑暗角落的解决方案应该设法处理这两方面的问题,以使我们能看到模板在C++程序员的工具箱中取得中心地位,这也正是设计它的目标。15.11.1 实现与界面的分离模板机制完全是编译时和连接时的机制,模板机制的任何部分都不需要运行时支持。这当然是经过深思熟虑的,但也遗留下一个问题:如何让从模板产生的(实例化出来的)类和函数能够依靠那些只有到了运行时才能知道的信息?与C++的其他地方一样,回答是使用虚函数。许多人都表达了一种担心,模板好像过分地依靠了源代码的可用性。这被认为能带来两种负面的副作用。[1]你无法将自己的实现作为你的商业秘密。[2]如果模板的实现改变了,用户的代码就必须重新编译。这两点确实是在大部分实现中遇到的情况。但是,利用提供界面的类派生出模板类的技巧可以限制这些问题的影响。模板经常被用来为某些可能需要“秘密的”部分提供接口,使那些部分可以修改又不会对用户产生任何影响。§15.5的pvector是这方面的一个简单例子;而§13.2.2中set例子的模板版本是另一个例子。我的观点是,关心这些事项的人应该用虚函数概念作为自己的另一种选择,我不需要再提供另一种跳步表⑤。
《C++语言的设计与演化》由C++语言的设计者Bjarne Stroustrup著就,是一本阐述C++语言的设计及开发过程的无可争辩的内情手册。Stroustrup在此展示了他在构造C++雏形时采取一系列决策的独有洞察力,既没有忽略关键性的详情,又没有过多地陷入技术细节。Stroustrup先生详尽解释了C++语言背后的奥妙,每个C++程序员都能从中大获裨益。《C++语言的设计与演化》架构清晰、易于阅读,寓教于乐。大量关键性的见解为初学者提供了许多逻辑“挂钩”,以帮助读者理解各种语言细节。《C++语言的设计与演化》还提供了有关关键设计决策的大量信息和讨论细节,同样能增强高级读者对该语言的理解。《C++语言的设计与演化》的特点:对构造C++语言时的目标、原理和现实约束进行了深入剖析;详述了C++语言中各个特征的设计决策;展现了C++语言特征与C++支持的设计和编程技术之间的关系;讨论了最新语言特征的设计问题:模板、异常、运行时类型信息和名称空间。荣获美国Software Development Productivity Award大奖,著译双馨。
无
入门很棒的书,学的是语言,但是也要了解背后的故事……
讲述了C++从产生、设计、演进的过程,其中不少是作者思考的过程,真的是一本经典巨作。
好书,c++中的小品文
还没看完,慢慢研读中
很经典!!!!!
啥也不说了,5星推荐,毕竟是c++创造者写的书啊
可以让人更了解C++,知道为什么C++会引入一些函数
强烈推荐,这里你可以知道c++为什么会是这样
受益匪浅,C++扩展研读
gbvnvbncbmcjgkhjklhj
首先,本书的编辑真是让我大开眼界,后面的索引只是按照字典顺序罗列了出现的术语,却没有术语对应的页码。不知道编辑懂不懂什么叫索引,知不知道索引对工程技术人员的重要性。这真是made in china的特色。对原著作者,对读者都是一种不负责任。第二,这本书只有374页,还是十年前就出版过的,定价却要86元。新世纪书局缺钱花吗,还是中国人民都过上了小康生活?不要忘了买着本书的有很多学生啊。第三,这本书内容还是很值得阅读的,阐述了bjarne设计c++的初衷、原则、哲学思想和各种语言特征的由来。可以让读者更清醒的认识C++。第四,本书的装订质量,封面设计都还是不错的。总之,这是一本C++程序员不看错过的经典书籍。
让人更了解C++,锦上添花的书
这书整体上来说还算是不错吧,我挺喜欢的,但是不足之处就是,我感觉翻译的不是很好,有些地方翻译的欠妥,内容本身倒还是不错
价格变动剧烈,书很薄
纸质较差,发黑,不适合收藏。
被翻译糟塌了这好书
书籍很好,但是价格超贵,这么点内容,价格这么贵,很黑!!即使是C++之父写的书也不能这样啊
之前一直想买这本书,结果买不到正版的。这两天欣喜的看到这本书再版了,结果价钱几乎翻了一番。。果断图书馆+复印好了。
书本来很好,可惜翻译的就那么一个人,几乎无校对。而且出版商单一,一本书往往只对应一个出版商,没有挑选余地。本书的装订一般,纸质真实太对不起这个价钱了(不考虑大打折活动优惠)。
抱歉,裘老师,我之前买了一本您翻译的C++程序设计语言(特别版•十周年中文纪念版),看了半个月最后还是决定看英文原版,虽然效率降低了,但至少还能看明白。所以这本书我还是决定买英文版的。
c++作者写的书,跟普通的教材没法一样。书很不错,需要细看。看得越仔细越好。好多重要的知识都是作者在无意间带出来的。就是封面看着有点丑。。。
不错,翻译的还可以,每个C++程序员都应该去仔细阅读,了解C++之父设计这门语言时遇到的问题,以及解决方案。C++不是学院派,是在实践中成长起来的。
很少见这种排版的书,排版真垃圾,那字体小的
C++他爹一定也觉得自己发明“世界上最难精通的语言”是一件非常牛逼的事情,消耗了老人家多年的内力,所以有时候跟异教徒对骂之余,更是祭出文房四宝(鼠标、键盘、台式机、老板蹬?)十指翻飞,将自己的战斗史娓娓道来。。。因为他知道,一千年以后,斯某人的只言片语都将在历史上发出金色的光芒,那么的鲜明那么的耀眼,而码农们,必定将本书的电子版刻入硬盘,奉为圭臬!
还不错,经典,不过暂不想从事c++
著作本身的质量显然是完美的,翻译也很好唯一的问题是纸张比较差
再版再贵也得买一本。
因为是C++老大写的,是冲着名气买来。首先我不怀疑原著的价值,问题是裘老大,你的翻译,说真的,让我失望。这是我第一次,感到对译本的失望。更重要的是,本书在02年就开始译出版了,十一年了,裘老师,你真打算一劳永逸吗。... 阅读更多
页边距有点小,四面都有点儿小!
内容不错,质量也挺好,但是价格和书比起来,是有一点坑啊
很不错的c++学习书籍.
太贵了,没意思
C++进阶必读!
从c++历史学习c++
学习c++
书比较薄,还要七十多元,不值
C++作者所写,经典书籍,要读。
C++的前世今生
C++之父亲自讲述c++的来龙去脉