V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hptcyhj
V2EX  ›  程序员

求推荐 c++入门书籍(没有任何基础)

  •  
  •   hptcyhj · 2015-07-27 15:13:18 +08:00 · 9916 次点击
    这是一个创建于 3441 天前的主题,其中的信息可能已经有所发展或是发生改变。
    coursera上的教授说书越薄越好,网上找了一下都是大块头~~
    推荐一下吧。
    33 条回复    2015-07-28 18:03:52 +08:00
    chmlai
        1
    chmlai  
       2015-07-27 15:18:09 +08:00
    <<C++ primer>>
    hptcyhj
        2
    hptcyhj  
    OP
       2015-07-27 16:01:17 +08:00
    @chmlai 这本很厚,而且要一定的基础啊
    zhicheng
        3
    zhicheng  
       2015-07-27 16:02:02 +08:00
    C++ Essentials
    acros
        4
    acros  
       2015-07-27 16:03:56 +08:00
    同意C++ essential··
    em70
        5
    em70  
       2015-07-27 16:06:13 +08:00 via Android
    没基础学C,别学C++,不适合做入门语言
    xdeng
        6
    xdeng  
       2015-07-27 16:08:11 +08:00
    《从新手到高手C++全方位学习》很不错
    henices
        7
    henices  
       2015-07-27 16:11:55 +08:00
    chmlai
        8
    chmlai  
       2015-07-27 16:15:36 +08:00
    @hptcyhj 连看 C++ primer 的基础都没有, 那得先学 C了
    xc77
        9
    xc77  
       2015-07-27 16:25:22 +08:00
    谭浩强,C语言程序设计
    iniwap
        10
    iniwap  
       2015-07-27 16:29:25 +08:00
    没有C++基础,为什么还要入这个坑呢。。。现在不都是不提倡古董语言了吗
    lifanxi
        11
    lifanxi  
       2015-07-27 16:39:42 +08:00
    我一直不理解为什么这么多人推荐用C++ Primer作入门书。可能是我太笨,我用了2年C++以后看C++ Primer(那时是第三版),还是觉得里面有些东西不好理解,因为它并不纯粹讲解C++的特性和语法,更多还包含了一些软件工程和设计方面的思想。

    C++ Primer目标读者是已经有编程经验的人(可以是学C++的第一本书,但绝不能是学编程的第一本书),楼主可以按这个标准判断是不是适合自己。
    wu181184
        12
    wu181184  
       2015-07-27 16:40:13 +08:00
    MinskyNg
        13
    MinskyNg  
       2015-07-27 16:43:47 +08:00
    入门别看书了 直接网上学就行了
    http://www.jisuanke.com/course/3
    xfwduke
        14
    xfwduke  
       2015-07-27 17:02:15 +08:00
    C++ primer plus

    这本更合适

    建议用Essential 拿来入门, 这真是...
    hitmanx
        16
    hitmanx  
       2015-07-27 17:31:02 +08:00   ❤️ 1
    因为我当初也是自学的,所以我走过的弯路可能对你有点参考意义。按照我个人的习惯,喜欢先从最弱、最简单的书开始看,这本看明白了,再换下一本看。虽然学习周期长一些,因为很多书涉及的内容会重复,但是优点是曲线比较平。

    按照这个标准我推荐按照以下顺序:
    《谭浩强》(我知道这本差评很多很多,但是里面的例子极其简单,适合毫无基础的人看。。)
    《C++ Primer Plus》 (注意是带plus的版本)
    《Thinking in C++》

    这些读完以后,你对这些c++已经有了概念,再去选书就有目标了。

    我个人不太喜欢《C++ Primer》(不带plus的版本),也许我比较笨,我觉得这本的难度对于入门不太适合。

    我也不推荐《Accelerated C++》,尽管这本书我当年入门时也啃完了,这本书很薄,但是学习曲线巨陡,前几页还在教你for \ while loop,到中后期连reference count都上了,而范例则大量地用了stl。好处是它的代码都是按照工业界规范写的,不会像谭浩强里面的一堆 a = b + 1之类的范例。
    womaomao
        17
    womaomao  
       2015-07-27 17:50:28 +08:00
    入门还是看谭浩强的书吧,不用在乎细节,把题目都做了。然后把C++primer给啃了,就入门了
    wshcdr
        18
    wshcdr  
       2015-07-27 18:20:22 +08:00
    C++ Primer不适合入门,适合做工具书
    chuan
        19
    chuan  
       2015-07-27 18:51:06 +08:00
    然而primer的意思就是入门书,初级读本。。
    yhxx
        20
    yhxx  
       2015-07-27 18:51:24 +08:00
    C++ primer Plus
    MikeFish
        21
    MikeFish  
       2015-07-27 18:59:52 +08:00
    C++ primer Plus
    blackworld
        22
    blackworld  
       2015-07-27 19:10:44 +08:00
    先去视频教学,然后看书
    hncqp
        23
    hncqp  
       2015-07-27 19:54:04 +08:00
    我是看C++ primer 入门的,个人觉得还不错
    fetich
        24
    fetich  
       2015-07-28 01:00:44 +08:00   ❤️ 1
    @lifanxi
    第五版对照第四版,变化很大,几乎是对结构重新安排了。
    fetich
        25
    fetich  
       2015-07-28 01:01:20 +08:00
    @hptcyhj
    都初级了,细细看,厚是厚了点。
    onemoo
        26
    onemoo  
       2015-07-28 09:04:52 +08:00   ❤️ 2
    不知道你说的没有基础是指对计算机基础不了解? 没有编程基础? 还是没有C/C++基础?

    《C++ Essentials》确实很薄,非常精简地讲解了C++的基本特性。序中写了这书的定位:这是给有编程基础,但3天内就需要写C++的人用的。如果想迅速对C++有个概略的了解,可以看这本。
    不过这书有些老,最近几年C++的演进比较快,很多新特性都没有讲到,当然全面讲解也不是这书的目标。
    其实《Accelerated C++》也不错,同样很精简(薄),而且没有单纯地讲语言特性,而是用实际的例子引导,可以让读者边看边敲代码,明显对新手更友好。不过据说中文版翻译很烂...

    @lifanxi
    正是因为它还写了一些软件设计方面的指导,相比那些只讲解语言特性的书,《C++ primer》更能帮助一个“新手”建立起较完整的开发观念。

    @wshcdr
    说《C++ primer》容易入门,是和《The C++ Programming Language》相对比的。《The C++ Programming Language》更像是工具书。

    我还是推荐《C++ primer》,一定要看新版!目前最新为第5版。 就算你是用精简版教程入门C++,后面还是要回来看这本的(悟性强的也可直接看The C++ Programming Language)
    个人认为《C++ Primer Plus》并不好,考虑到它也不薄,还不如直接看上面那本。不过,如果你是一点编程都没接触过,完全不清楚编译链接这些概念,连开发环境都搭不起来的话,还是看看这书的第一章吧。知道了如何敲代码之后,再回去看上面的。
    yangyanggnu
        27
    yangyanggnu  
       2015-07-28 09:07:57 +08:00
    零基础、页数少、权威性,只能是 《You Can Program in C++: A Programmer's Introduction》, francis glassborow,ACCU 主席;

    权威入门,必须是 《Programming: Principles and Practice Using C++》,bjarne stroustrup
    lifanxi
        28
    lifanxi  
       2015-07-28 11:13:06 +08:00   ❤️ 3
    @fetich

    谢谢指正。我只在十三年前看过第三版的C++ Primer,今天把第四版、第五版找出来大致翻了一下,新版本跟第三版比较就完全不是同一本书。跟第三版比,新的版本确实更适合初学者使用。

    十几年前差不多是C++在国内最火的那阵子。那时C++ Primer第三版中文版一出来,就有很多根本没看过这书的给完全没有学过编程的人乱推荐,我那时在CSDN的C/C++版块混得比较多,对于这样的不靠谱的日经答案耿耿于怀,一直就影响到现在了。

    我部分收回我在11楼的言论。我没有与时俱进,用过时的认识进行不靠谱的回复,提供了具有误导性的信息,抱歉。

    @onemoo
    如果是按第三版那样的描述和组织方式,我不认为对初学者会有多大帮助。后来的版本我没仔细看过,所以就没有发言权了。有些东西早期能够培养一个意识就可以了,等有经验了或者犯错犯多了,再去针对性学习会更有效果。非要把软件工程和OO设计跟语言特性混在一起讲,我觉得效果并不会很好。
    endrollex
        29
    endrollex  
       2015-07-28 11:16:03 +08:00
    C++ Primer 你可以看前面一部分,后面模板和泛型编程,高级主题可以先不看
    fetich
        30
    fetich  
       2015-07-28 11:57:20 +08:00
    @lifanxi
    十三年前。。。前辈啊。
    很感谢 Stanley B. Lippman 这位作者能一直孜孜不倦地更新这本书还有勘误表,以致我能直接接触这系列的最新版,真是非常幸运。
    onemoo
        31
    onemoo  
       2015-07-28 15:11:15 +08:00
    @lifanxi 嗯嗯。
    C++ primer的第3版确实是本手册,很不适合入门,第4版也差不多,现在第5版要好多了,所以强调一定要看新版。
    fantasyczl
        32
    fantasyczl  
       2015-07-28 15:31:11 +08:00
    <<C++ primer>>
    +1
    HisbigXu
        33
    HisbigXu  
       2015-07-28 18:03:52 +08:00
    没有任何基础,干吗不学python入门?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3490 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 10:30 · PVG 18:30 · LAX 02:30 · JFK 05:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.