如何正确的通过 C++ Primer 学习 C++?(转自知乎)
2018-03-02 10:43
399 查看
如何正确的通过 C++ Primer 学习 C++?(转自知乎)
作者:dawnmist链接:https://www.zhihu.com/question/32087709/answer/54936403
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
个人经验,C++ primer 第一次可以跳着看。关键是要尽快用起来,在使用中熟练,而不是在细节中迷失。
以C++ Primer第五版为例,第一遍读的时候:
Part1也就是前七章,除了6.6,6.7节,都要通读。尤其是第三章初步介绍了vector和string,简直就是新手福音,搞定这两个容器就能写一些简单的程序。
Part2基本就是数据结构和算法,如果有基础读起来很轻松。
9,11两章介绍的容器,以及12.1节的智能指针要通读。多用智能指针和容器,远离segment fault. 第10章里的泛型算法可以慢慢读,读完以后可以写出高逼格的函数式风格C++。12.2节讲了怎么用new和delete分配空间,题主作为新手,知道这种写法就行,写程序时尽量用容器代替原始数组,尤其是代码里最好不要有delete。
Part3是块硬骨头,标题就是Tools for Class Authors. 作为一个”class user”,有些部分第一次是可以略过的。
13章很重要,要细读。初始化,复制,赋值,右值引用是C++里很微妙很重要的部分,别的语言对于这些概念很少有区分得这么细的。这一章不但要精读,还要完全掌握。
14章的操作符重载第一次可以观其大略;14.9节第一次可以跳过。
15章讲OOP,重要性不言而喻。如果之前一点概念都没有,学起来会觉得比较抽象。网上关于OOP有很多通俗有趣的文章,可以一起看看。
16章讲泛型编程,第一次读16.1节,掌握最基本的函数模板和类模板就行了。
Part4就更高档了,很多内容第一次就算啃下来,长久不用又忘了。第一次读推荐把18.2节读懂,命名空间简单易用效果好。别的内容可以观其大略,用时再看。17.1节的tuple是个有趣的东东,可以读一读。17.3节的正则表达式和17.4节的随机数也许有用,也可以读一读。如果需要读写文件,要读一下17.5.2节的raw I/O和17.5.3节的random I/O。
最后给题主的建议是,写C++,要尽量避免C的写法。用static_cast而不是括号转换符;用vector而不是C里面的数组;用string而不是char *;用智能指针而不是原始指针。当然I/O是个例外,printf()还是比cout好用的;转换数字和字符串时sprintf()也比stringstream快。
相关文章推荐
- 如何正确的通过 C++ Primer 学习 C++?
- 如何正确的通过 C++ Primer 学习 C++?
- 如何正确的入门Windows系统下C/C++学习领域
- 如何学习C++? C++ Primer第三版中文版
- 如何更好的利用《C++ Primer》学习C++?
- c++ primer 学习之路 (5)3.1.7 c++如何确定常量的类型
- 如何正确的入门Windows系统下C/C++学习领域
- 如何利用《C++ Primer》学习C++?
- 【知乎Live】狼叔:如何正确的学习Node.js
- 你应当如何学习C++(以及编程)(rev#1)
- 你应当如何学习C++(以及编程)
- 初学者,你应当如何学习C++以及编程
- 你应当如何学习C++(以及编程)(rev#1)
- 如何学习C++(面向对象和windows编程第一节课讲稿)
- 你应当如何学习C++(以及编程)(rev#1)
- 你应当如何学习C++(以及编程)(rev#1)
- 如何通过正确的方法提高产品在搜索引擎中的排名?
- [转]你应当如何学习C++(以及编程)
- 如何利用Xerces C++正确处理XML文档中的WhiteSpace
- 如何通过回顾保持学习状态