你真的知道自己该怎么学C++/VC?
创建人:瑞和高科高级工程师 Priscilla_Zhang
每次上网购书抑或帮别人购书时都会看到一些同僚们在此所发表的看法、观点,更确切的说应该是心得。虽然自己从事C++/VC编程已有6载,但要学习的东西实在是太多,我现只就如何根据自己个人的情况有选择性的,高效的掌握C++发表一点个人的看法。我对上次XXX发表的一篇文章不是很赞同,因为我对其中阅读一些书的顺序不认同,顺序很重要!不可否认,C++有如此至多的拥护者,但同样也有很多盲目的追随者,因此,望大家对自己有一个正确的认识后再开始学习。
[ 查看本指南所提及的书籍 ]
首先,我要强调一点,在学C++之前对C一定要有一个彻底地认识,很多人觉得C++是C的超级,无须先学C就可以学好C++,话虽没错,但那样比先学C后学C++浪费很多时间,甚至绕很多弯子。
1.学习C语言,全世界公认的是Brian W.Kernighan&&Dennis M.Ritchie的 C程序设计语言 ,目前国内译地最好的应该数曹化工和秦友淑的 C语言程序设计 。
2.学完C后,一定要跟上严蔚敏的 数据结构(C语言版) ,因为此书不但能使你再次巩固所学的C(尤其是结构体的知识这与C++的类同属一类),而且还能拓宽自己的抽象视野。
3.C++,强力推荐Bjarne Stroustrup的 C++程序设计语言(特别版)。目前国内我没发现有写的比较好的C++书,和多人会纳闷,觉得钱能的 C++程序设计教程 不是很好吗?但一读你会发现他的这本书对C++的关键技术涉及的很少,一味在重复面向过程的一些知识。我们说在你学完C之后,应该对面向过程有了一个很好的了解,现在应该迈入面向对象的世界。
4.操作系统,William Stallings的 操作系统——内核与设计原理(第四版) 和Andrew S.Tanenbaum的 现代操作系统 。这是两本侧重于不同方面的经典教程。
5.编译原理,阿旺的 程序设计语言编译原理(第3版) 。编程为什么要学这两门课?呵呵,因为你要继续学VC++,因为学VC++需要你对Windows内部机制有一个彻底的了解。
6.修完C++后,需要不时的多看看Bruce_Eckel的 C++编程思想 ,对你很有帮助。Kris Jamsa,Lars Klander的 C/C++程序员实用大全-C/C++最佳编程指南 ,对于巩固C&&C++来说真是一本好书。
VC的学习
- Charles Petzold的 Windows 程序设计(第5版)(上、下册) 当作自己学VC编程的入门教材。
- MFC Application Mainframe,选择侯捷的 深入浅出MFC(第二版) .
对于VC编程,好书真的很多,只是需要根据个人的实际情况有选择性的看,因为很多都是重复性的(虽然它们都是好书,比如: C++ Primer 中文版(第三版) 和 C++程序设计语言(特别版) 只需看其中的一本,这两本都是经典C++之作)。
好书列举如下:
Visual C++技术内幕(第四版)
C++语言的设计和演化 ,
More Effective C++中文版
深入浅出 WINDOWS MFC 程序设计
Windows核心编程
More Effective C++中文版
More Exceptional C++ 中文版
C++并行与分布式编程
C++经典问答(第二版)
Effective C++中文版
等等,建议大家阅读英文原版。