漫谈怎样更好的进行学习C++语言

开发 后端
你可能会说学习C++时,那难道这些书就根本不值得看了吗? 我的回答是,对。根本不值得看。——但是值得放在旁边作为必要的时候的参考(记住从索引或目录翻起,只看严格必要的部分),如果你是个严肃的程序员的话。

学习C++则是这些“创新”的土壤,是的,我说的就是无穷无尽的workarounds和惯用法。但问题是,这些“创新”其实根本不是创新,看完本文你肯定有不少收获,希望本文能教会你更多东西。

墨菲法则的强大力量是不可忽视的——如果有一个可能遇到的陷阱,那么总会遇到的。而同样,C++的那些奇技淫巧也并非空穴来风,总有时候会需要用到的。但是你不需要预先把C++的所有细节和技巧存在脑子里才能够去编程,即:

建议1:有辨别力地阅读(包括那些被广泛称为“经典”的)C++书籍。

如果书中介绍的某块内容你认为在日常编程中基本不会用到(属于20%场景),那么也许***的做法是非常大概的浏览一下,留个印象,而不是顺着这条线深究下去。关于在初学的时候应该读哪些书,后面还会提到。

实际上,除了语言无关的编程修养之外(需要阅读什么书后面会提到),对于学习C++这门特定的语言,要开始用它来编程,你只需知道一些基础但重要的语言知识(需要阅读哪些书后面会提到)以及“C++里面有许多缺陷和陷阱”的事实,并且——

建议2:养成随时查阅资料和文档的习惯。

“查文档”几乎可以说是作为一个程序员最重要的能力(是的,能力)了;它是如此重要,以至于在英文里面有一个专门的缩写——RTFM。为什么这个能力如此重要,原因很简单:编程领域的知识太鸡零狗碎了。

不仅知识量巨大,而且知识的细节性简直是任何学科都***的(随便找一个框架类库看看它的API文档吧)。所以,把如此巨量的信息预先放在脑子里不仅不实际,而且简直是自作孽。你需要的是“元能力”,也就是查文档的能力——从你手头遇到的问题开始,进行正确合理的分析,预测问题的解决方案可能在什么地方,找到关于后者的资料,阅读理解,运用。#t#

同样,在C++中也是如此,如果你从学习C++一开始就抱着这种态度的话,那么即便等到面试的时候被问到某个语言细节,你也可以胸有成竹的说你虽然并不知道这个细节,但在实际编码中遇到相应问题的时候肯定会找到合适的参考资料并很快解决问题(解决问题,才是最终目的)。

当然,更大的可能性是,你在平常编码中已经接触过了最常见的那80%的陷阱和技巧了,由于你用的是实践指导性的学习方式,所以你遇到的需要去学习的陷阱和技巧几乎肯定都是常见场景下的,比没头苍蝇似的逮住一本C++“经典”就“细细研读”的办法要高效N倍,因为在没有实践经验的情况下,你很可能会认为其中的每个技巧,每个陷阱,都是同样概率发作的。

责任编辑:chenqingxiang 来源: csdn博客
相关推荐

2010-01-26 10:01:17

学习C++

2010-01-26 09:40:23

C++代码

2010-01-28 15:31:34

学习C++语言

2010-01-15 18:06:20

C++引用

2010-01-15 16:25:48

学习C++

2010-01-15 19:28:59

C++

2010-01-20 14:35:55

C++调用

2010-01-22 13:20:27

C++代码

2010-01-25 14:43:00

C++构造函数

2010-01-22 18:06:24

C++代码

2010-01-13 14:05:55

C++语言

2010-01-12 15:13:37

Visual C++环

2010-01-12 14:22:26

Visual C++

2010-01-22 11:13:16

C++静态

2010-01-11 14:05:01

C++学习方法

2010-01-11 14:17:02

C++编程

2010-01-18 16:56:30

C++函数

2010-01-11 11:27:25

C++语言

2010-01-14 14:40:21

C++代码

2010-01-18 18:04:28

静态成员
点赞
收藏

51CTO技术栈公众号