get a feeling of cpp_Essential C++中文版书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > Essential C++中文版 > get a feeling of cpp
[已注销] Essential C++中文版 的书评 发表时间:2013-06-01 16:06:46

get a feeling of cpp

     这本书的意义在于让你找到c++的感觉,随着书中结构式-范型-OB-OO的叙述路线,能让你对于c++的抽象手段有一个大致的印象,大致明白c++是如何在保证执行效率的情况下提供强大(也稍嫌笨重)的抽象的。
       按照作者的原意,这本书是让一名颇有经验的程序员快速学习C++用的—当我们想要快速学习一门计算机语言的时候,总是希望书本薄一些。于是C++复杂的语法特性就被压缩进了200页之中。但是以现在的眼光来看,从别的语言转到C++的程序员,很可能是不怎么熟悉显式指针的。若没有足够的C的经验,读到2.8 函数指针的时候估计就想放弃了。
      上千页的C++ Primer面面俱到,让初学者陷入在语法细节中,或许会痛苦不堪:让我印象最深刻的是const ref那里,当时无论如何都看不下去了。但说实话这本看起来更痛苦,高度压缩后的教程,损失的最多的是可读性。最后这本书被我放在床头,睡不着的时候就看上一段。

       这本书在细节上面也有些硬伤,例如2.1 How to write a function,其中讨论了一个求斐波那契数列第n项的函数,作者提到,这里的n不能太大,不然会溢出,然后把n限制在了1024以下。但是fib(1024)也是肯定不能放在一个int里面的。也许这本书比较冷门,这个错误一直没见人提到过。我第一次读到的时候,还以为是自己对fib的增长速度的感觉错了,因为作者在上文还专门讨论过,第n项的n不能太大。例子是如果求第5000项,那么会溢出。如果把数据类型改成unsigned int,就变成正数了。然后也没解释是为什么,给人的感觉就好像是int放不下,但是用unsigned int就能放下了……现在看来,估计是Lippman本人对于fib的增长比较没概念,于是犯了这种错误。

      之前看到过一篇书评: http://www.idinews.com/lippman2Rvw.html
其中批评这本书中的例子不实用,不能叫essential(是不是我对这个英文单词的理解有偏差?essential的书偏重语法特性有什么错?如果是讲实例,为什么不叫practical?);bubble sort的实现很糟糕,称不上bubble sort;debugging用了一个函数的可选参数等等。

      现在回头来看,这本书虽然能带你找到点cpp的感觉,但是深入去钻研,也很难走得更远了。如果你真的熟悉C(不是大概有个印象),或许能用这本书学c++;如果不熟悉C,想用这本书学c++就很难了吧。新学c++,还是去看accelerated c++;复习c++的要点,有一本c++ common knowledge比较合适。
      读了这本书,能学到些东西,是什么呢?能明确地说出来的,就是一种对c++的感觉。或许,这本书真应该归入“鸡肋”的行列吧。

展开全文
有用 5 无用 0

您对该书评有什么想说的?

发 表

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读