























这是一个创建于 492 天前的主题,其中的信息可能已经有所发展或是发生改变。
在 B 站找 C++自学路线,有的 UP 主包括 01 星球等,推荐书籍《 C++ Primer Plus 》。我买回来上下两册,巨厚。 上册目前看了两百页。
我发现这书的槽点有两点: 第一点是书中明确说对于初学者不需要 C 语言基础,或者其它语言基础。但是它一再提及其它语言(有些是没有见过的语言),甚至大篇幅讲 C 语言语法,示例里 C 语言和 C++混用,看了之后合上书顿时分不清哪个是 C 的,哪个是 C++的。对于没 C 语言基础的人来说,尤其痛苦。
第二点是重点的地方不讲深,几句话带过去了,而不重要的地方废话真是多。
当时 B 站的人推荐理由是 C++ Primer 更深,不适合初学者,推荐 C++ Primer Plus 。
后悔当时没有在外网去收集这两本书的不同之处,外网骂后者是垃圾书籍的可多了。。。
这两本书完全不是同一级别,Primer 更好,Plus 是 shit!
就吐槽一下,看完还是要看完的。
1 wuxinling 2025 年 2 月 7 日如果不是明确的有需要用 C++的开发需求的话,新手用 python 入门吧,省事一点。 |
2 wanmyj 2025 年 2 月 7 日LZ 是非理工科的底子吗?你的这句:对于没 C 语言基础的人来说,尤其痛苦 --- 一般理工科的基础课里要么有一门 C 语言的课程,要么有一门 C++语言课程。无论上过哪一门,都能快速区分出一段代码里有没有 C++的元素。这里不说“快速区分出一段代码里有没有 C 的元素”,是因为 C++的编译器是兼容 C 语言的,C 语言的部分,C++语法都支持,虽然可能编译的结果有差异。 如果你没有理工科的基础,那入门 C++还是略有难度的,最好有个人带,和实际项目一起入手。如果有理工科基础,但看 C++ Primer (Plus)这种书吃力的话,那还是多写 demo 代码,可以快速把语法吃透,毕竟那么多语法,只通过看书,完全看过都是非常痛苦的事,更不要提掌握 |
3 ghonfir 2025 年 2 月 7 日plus 还可以吧 我十几年前在学校自学就是学的这本书 我觉得掌握语言还是没什么问题的 |
4 coderluan 2025 年 2 月 7 日C++初学者可以不学 C ,但是最好学过其它编程语言,现有个面向过程编程的逻辑再去学面向对象。Plus 本身不至于屎,但是碰瓷 Primer 属于原罪了。 |
5 kinkin666 2025 年 2 月 7 日如果是大一、大二的话,可以先 !!!批判性地!!! 学习学校里发的课本,比如谭浩强的 c++,把上面的实验都做一遍,然后再学 C++ Primer 再之后就可以学 unix 网络编程 和 CSAPP 了,再然后可以看看 muduo (可能有年头了哈 unix 网络编程和 csapp 学了之后内功就挺深厚的了 |
7 zhuanggu 2025 年 2 月 7 日不明白为啥要学 C++,我记得那是我十五年前上学刚工作的时候学的,现在除了嵌入式和一些 AI 的得层用的很少了,你是要从事这个方面的工作吗?如果仅仅是学习编程,学个 Python 就足够了 |
8 skallz 2025 年 2 月 7 日@zhuanggu 确实,看各自语言生态库的数量和更新频率就看得出来了,前三的基本都是 py ,js ,java ,很多年雷打不动,很多时候 c++是第二或者第三语言了(就算刚毕业就奔着 c++岗位的之前也应该有学习其他语言),所以 op 提到的 c++教程为什么会有其他编程语言混入 23333 |
9 skallz 2025 年 2 月 7 日不过我也非常讨厌 c++教程里面混入 c ,你可以教我用 c++的第三方库解决这个问题,但是别教我用 c 自己去处理,混在一起对入门真的不太友好 |
10 cnbatch 2025 年 2 月 7 日偏向阅读书籍的话,如果有其他编程语言的基础,那么可以过一遍 C++之父的 A Tour of C++(中文版叫《 C++之旅》),时间足够的话还可以看看他的 The C++ Programming Language (中文版叫做《 C++程序设计语言》,电商平台查找时注意看作者栏,同名书籍过多) 更推荐的是楼上提供的 learncpp 网站,内容新得多 |
11 LotusChuan 2025 年 2 月 7 日是的,学 C++看书没啥用,原因是 C++作为较为底层的语言对更底层抽象得并不好,它把这些底层问题都抛给开发者。学会基础语法 crud 很简单,但是如果你需要接触一些特性就会发现各种书、文档、教程都在若无其事地引入底层细节,这就是底层抽象不好的体现。 我学 C++用的 C++ Primer ,现在回头看来一是效率低下,二是讲的很浅,三是现在 C++ 11 已经过时了。 如果你计算机基础不行,而且非学 C++不可,那最好是找个国外公开课刷 lab 把计算机基础补了,主要是操作系统。一般这种课用的是纯 C ,理解纯 C 写法后再看 C++相关特性就会理解为什么这么设计。 如果你本身有计算机基础,直接去网上搜 C++的编程约定,按最佳实践来写。不要沉溺于某个特性,它可能毫无作用,可能在以后的标准中被替代,最重要的是你的同事看不懂。 最后 C++的现状挺尬的,岗位只把它当成工具,有价值的是具体的业务,也就是其实学点基础语法就能干了,显得 C++那些特性很多余。这种现状会让你感觉很割裂,上班写的是 for 嵌套,论坛却在讨论 concept 。 |
12 BALKIN 2025 年 2 月 7 日Primer Plus 我觉得作为入门书挺可以了。Primer 是一章把所有 C++基础特性讲完,第二章开始就开始讲各种 c++11 标准相关的。C++这门语言历史太长各种杂七杂八特性和历史遗留问题太多,楼主不需要太心急。 |
13 daqingzi 2025 年 2 月 7 日为什么不去图书馆借,图书馆老多了 |
14 letianqiu 2025 年 2 月 7 日C++ Primer Plus 是可以作为编程零基础的人学的,C++ Primer 是给有编程经验的人看的。 |
15 lvlongxiang199 2025 年 2 月 7 日有编程经验的话, 可以看 a tour of cpp 及 cs106L |
17 araraloren 2025 年 2 月 7 日大部分书籍都需要你有基本的知识,别听他们胡扯。。 |
18 Lhcfl 2025 年 2 月 7 日确实被坑了,拿 C++ Primer Plus 入门有点太中式高等教育了的感觉了,虽然我也没有能推荐的更好的书 |
19 Amose2024 2025 年 2 月 7 日谢谢大家回复。我并非没有编程经验,C 语言很久前学过,忘光了,Java, Python, Ruby, Js 都有熟悉过,有的还做过项目。我的直属 Leader 希望部门成员每年学习一门新语言,我选了 C++。公司也有 C++项目,只是我没接触过。 看楼上的指教,learncpp 网站、A Tour of C++、The C++ Programming Language 、cs106L ,值得参考。 |
21 gumayusi 2025 年 2 月 8 日这都什么年代的书了,不如《学习 C++20 》。以前的书经常串来串去的,比如《 Java 核心编程》到处都在讲 C++,Java GUI 都死了多少年了还留着占页数。 |
22 slack 2025 年 2 月 10 日 via AndroidC++实际上是一门充满各种各种“方言”的编程语言,MSVC 和 GCC 、LLVM 也是各有各做,你真按照书上写的去做会过不了编译。你敢信,某个小版本 VS 更新后你写的代码就失效了,嗯是的傻逼微软就是如此任性。 |
23 hhjuteman 2025 年 2 月 25 日c++ 得多实践,我记得我当年学习 c++得时候什么 C++ Primer, The C++ Programming Language 都看不进去。因为这些书总搞些前后照应,然后又用容器得语法,我当年看到迭代器这个概念人都是蒙的。 最后学会语法靠的是查 msdn 文档和 cpp reference 完成了几个小项目。完成几个小项目以后对除了模板大部分得语法就比较熟了,然后我第一本看完得书是 《 effective c++》,从中反思了之前写的几个小项目到底有哪些不对得。 总之我个人得 c++学习是通过实践和工作中得来得,早期写代码更是模仿一些 C++开源项目, 看书看视频更多是对过去得代码和项目进行反思总结。 所以我推荐楼主也是多实践,有不懂查查文档,问问 AI ,比看什么 C++ Primer, The C++ Programming Language 来的深刻。 |
25 slideclick 2025 年 3 月 8 日你们这些书没有一本最好的,最好的我不告诉你们,因为我在找工作。 不过我劝年轻人去学 golang,没有私心的劝。 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。