C++学习的方法以及四大名著
2012-08-17 13:41
381 查看
转眼间学习和使用C++已经有近10个年头了,开始学习的时候走了不少的弯路,今天有些时间,希望写下这篇文章并且对开始学习C++的朋友有些帮助。当然我首先需要说明的是,这篇文章是根据本人的感受写的,可能不同的人有不同的观点,欢迎讨论。
开始学习C++的时候中国的互联网环境还不是很好,信息也比较闭塞,所以自己开始的时候是由Thinking in C++ 开始的,买了两卷本的英文版,废了好大的一番周折才算看完了,这个过程大约花费了近6个月的时间,当然期间也要花时间完成学业。后来就有这个根基开始了不断的写代码,做ACM的题,渐渐开始了C++真正的旅程。
时至今天我发现,其实这个过程可以更轻松,只要有过来人稍微点播一下,于是有了写这篇文章的想法。其实学习C++的读书顺序应该是这样的(对于有C基础的朋友):
C++ Primer
Effective C++
Exceptional C++
Inside the C++ Object Model
这就是我选的C++四大名著,那么我为什么选这四本书呢?
C++ Primer 这本书我看过第三版和第四版,目前这本书已经出到了第五版,不得不说,这本书太适合入门了,当然我指的是有C基础,而且基本上所有的语言特性都给予了说明,可以说是大而精。同等地位的书有C++ Programming Language 和 Thinking in C++ 这两本书我也读过,但是个人认为,读了C++ Primer再看这两本书意义不大。
Effective C++ 和Exceptional C++ 这两本书并不厚,但是涵盖的知识面是一般的C++书籍所无法企及的,可以说如果没看过这两本书就不算合格的C++程序员,俗话说磨刀不误砍柴,这两本书就是磨刀的,但是这两本书都不简单,建议看完了C++ Primer再看。
Inside the C++ Object Model看这本书可能需要一点功力,薄薄的一本书,足够全力的研读一周,一旦通关了可以说对于C++的理解可以到达另一种境界。
关于这些书籍是读中文版还是英文版的问题
我的建议是买一本中文版,找一本英文的电子版(可以去买电子书),直接读中文版,然后感觉可能翻译有问题的地方对照着看。为什么这么说呢,因为根据我的经验,这样读书的效率更高。而直接读英文版和所谓的“评注版”意义都不大,读书的时候会相对的浪费精力,这个和英语水平没关系,除非英语你的母语。
关于标准库和泛型编程的学习
这方面确实是对C++语言的增强,但是编码难度相对较大,也特别容易被人忽视,但是C++发展到今天标准库和泛型编程已经和完整,而且确实可以提高生产力,建议在看看相关的书籍,有时间写篇这方面的文章。
总结
本问总结了学习C++的一些需要注意的问题,并且推荐了四大名著,相信只要按照顺序修炼,大家一定可以学好C++的,祝大家功力更上一层楼。
出我的顺序:
1. C++ Primer
2. Effective C++
3. More Effective C++
4. Exceptional C++
5. Inside the C++ Object Model
6. C++ Templates
7. C++ Modern Design
附(下面两本是C++之父的作品):
1. C++ Programming Language
2. C++语言的设计与演化
最后说明的是,最后一本很不错,但是翻译的很差。
开始学习C++的时候中国的互联网环境还不是很好,信息也比较闭塞,所以自己开始的时候是由Thinking in C++ 开始的,买了两卷本的英文版,废了好大的一番周折才算看完了,这个过程大约花费了近6个月的时间,当然期间也要花时间完成学业。后来就有这个根基开始了不断的写代码,做ACM的题,渐渐开始了C++真正的旅程。
时至今天我发现,其实这个过程可以更轻松,只要有过来人稍微点播一下,于是有了写这篇文章的想法。其实学习C++的读书顺序应该是这样的(对于有C基础的朋友):
C++ Primer
Effective C++
Exceptional C++
Inside the C++ Object Model
这就是我选的C++四大名著,那么我为什么选这四本书呢?
C++ Primer 这本书我看过第三版和第四版,目前这本书已经出到了第五版,不得不说,这本书太适合入门了,当然我指的是有C基础,而且基本上所有的语言特性都给予了说明,可以说是大而精。同等地位的书有C++ Programming Language 和 Thinking in C++ 这两本书我也读过,但是个人认为,读了C++ Primer再看这两本书意义不大。
Effective C++ 和Exceptional C++ 这两本书并不厚,但是涵盖的知识面是一般的C++书籍所无法企及的,可以说如果没看过这两本书就不算合格的C++程序员,俗话说磨刀不误砍柴,这两本书就是磨刀的,但是这两本书都不简单,建议看完了C++ Primer再看。
Inside the C++ Object Model看这本书可能需要一点功力,薄薄的一本书,足够全力的研读一周,一旦通关了可以说对于C++的理解可以到达另一种境界。
关于这些书籍是读中文版还是英文版的问题
我的建议是买一本中文版,找一本英文的电子版(可以去买电子书),直接读中文版,然后感觉可能翻译有问题的地方对照着看。为什么这么说呢,因为根据我的经验,这样读书的效率更高。而直接读英文版和所谓的“评注版”意义都不大,读书的时候会相对的浪费精力,这个和英语水平没关系,除非英语你的母语。
关于标准库和泛型编程的学习
这方面确实是对C++语言的增强,但是编码难度相对较大,也特别容易被人忽视,但是C++发展到今天标准库和泛型编程已经和完整,而且确实可以提高生产力,建议在看看相关的书籍,有时间写篇这方面的文章。
总结
本问总结了学习C++的一些需要注意的问题,并且推荐了四大名著,相信只要按照顺序修炼,大家一定可以学好C++的,祝大家功力更上一层楼。
出我的顺序:
1. C++ Primer
2. Effective C++
3. More Effective C++
4. Exceptional C++
5. Inside the C++ Object Model
6. C++ Templates
7. C++ Modern Design
附(下面两本是C++之父的作品):
1. C++ Programming Language
2. C++语言的设计与演化
最后说明的是,最后一本很不错,但是翻译的很差。
相关文章推荐
- C++学习的方法以及四大名著(转)
- C++学习的方法以及四大名著(荐)
- C++学习的方法以及四大名著
- C++学习的方法以及四大名著
- C++学习的方法以及四大名著(荐)
- C++学习的方法以及四大名著(荐)
- 现代C++新四大名著及C++学习杂谈
- C++学习的四大名著
- C++学习笔记——Mat类详解及元素的遍历方法
- 学习C++:实践者的方法
- 你应当如何学习C++(以及编程)(rev#1)
- 学习C++:实践者的方法
- c#调用c++程序(DLL方法,以及opencv,运行开源的人脸识别seetaface)
- c/c++程序main函数参数解析,以及参数传递的不同方法
- 探讨程序员如何学习你不熟悉的技术,以及用什么样的方法去学习.
- 学习C++:实践者的方法(Beta1)
- NODE.JS学习的常见误区及四大名著
- First head 设计模式学习c++实现------模板方法模式(Template method pattern)
- (转载)学习c++ 的方法