C++学习步骤

转载 2012年03月25日 15:02:20

C++知识分类:

①基础知识(C 语言、标准库、文件、注册表、数据结构)   
    
②高级知识(多线程、串口通讯、网口通讯、动态库、MFC、COM、ATL、ActiveX)   
    
③专业知识(图像处理、多媒体、OpenGL、DirectShow、数据库、网络安全)   

C++学习步骤:

第1阶段

先花一个月时间学习基本C语言,然后再看林锐博士的高质量编程,最后才去看C++ prime,the c++ programming language(一般作为参考书,比如调试时发现编译错误,但又觉得莫名其妙时!),看完这些,基本会基于对象编程了!

第2阶段:

尝试实现封装C语言的字符处理函数,做一个字符串!
可以结合Effective C++/More Effective C++/Exceptional C++一起看,这样下来,你对指针操作,异常处理,智能指针会有深入的理解!

这时,你基本上可以用c++工作了!

第3阶段——面向对象的设计
入 门的例子就是结合VC一起学,研究MVC模式,最好提高功力的书就是深入浅出MFC,这本书关键是要看懂前面3章,懂得如何去按MVC模式封装底层的C语 言,实现面向对象机制!同时,还可以看有关STL的书,这方面的好书比较少,入门的书倒是比较多!这个阶段的关键在于理解如何结合语言特性和软件需求来设 计!

第4阶段——编写自己的系统库

一般能进入这一境界的实在太少,这需要你懂太多知识!首先,你要基础理论知识比较扎实,按我的理解,无法独立完成一个小的核心操作系统和编译器的人 和那种先天数学功底弱的人是没希望了!因为,当你抽象一个外部系统并建立自己的解决方案时,必然有现在还无法解决的问题,这时,你必然会对原有语言进行改 进,更牛的人甚至是设计自己的硬件!呵呵,进入这一境界,才算入世了!这时,语言已融入你的思想,不再是语言控制你,而是你控制语言了!可惜,目前中国还 没听说这号人出现,也许...

学C++和武侠里面的学剑差不多,大多数人只会用来劈材,少数人能够自立门派,为数不多的人能成为大师,至于心剑合一则是百年一遇!

最后,路漫漫其修远兮!

秘籍:

[Lippman2000] Essential C++
Essential C++,by Stanley B. Lippman Addison Wesley Longman 2000,276 pages
Essential C++ 中文版 ,侯俊杰 译,282页  

[Gregory95] C++:The Core Language
C++:The Core Language by Gregory Satir 1995 O'Reilly
C++语言核心,张铭泽 译 ,236页

[Deitel98] The Complete C++ Training Course
The Complete C++ Training Course 2/e by Harvey M.Deitel 1998 Prentice Hall
C++大学教程(第二版),邱仲潘等 译,816页

[Stevens2000] Standard C++ Bible
Standard C++ Bible    2000   Al Stevens    IDG
标准C++宝典,林丽闽等 译,766页

[Eckel2000] Thinking in C++
Thinking in C++ 2/e    Bruce Eckel   2000 1470 pages Prentice Hall
C++ 编程思想,刘宗田等 译,420页

[Lippman98] C++Primer
C++ Primer,3rd Editoin,by Stanley Lippman and Josee Lajoie
Addison Wesley Longman,1998 1237 pages
C++ Primer 中文版,侯俊杰 译,1999,1237页

[Struostrup2000] The C++ Programming Language
The C++ Programming Language,Special Editoin,by Bjarne Stroustrup
Addison Wesley Longman,2000,1017 pages
C++程序语言经典本,叶秉哲 译,儒林 1999

[ANSI C++] C++规格书 1998.9.1 PDF格式
ANSI C++ 1996 Draft


层级二:专家经验(C++/OOP)
[Meyers96] More Effective C++
More Effective C++,by Scott Meyers,Addison Wesley,1996,318pages
More Effective C++中文版,侯俊杰,培生 2000. 318页

[Meyers98] Effective C++
Effective C++,Second Edition,by Scott Meyers,Addison Wesley Longman,1998.256pages
Effective C++ 2/e 中文版,侯俊杰,培生 2000.256页

[Sutter99] Exceptional C++
Exceptional C++,by Herb Sutter,Addison Wesley Longman,2000.208pages
Exceptional C++中文版,侯俊杰,培生 2000.248页

[Sutter2001]More Exceptional C++
More Exceptional C++ by Herb Sutter,Addison Wesley Longman,2001.

层级三:底层机制(C++ Object Model)
[Ellis90] The Annotated C++ Reference Manual
The Annotated C++ Reference Manual,by Margaret A.Ellis and Bjarne Stroustrup
Addison Wesley Longman,1990,447 pages.

[Lippman96] Inside the C++ Object Model
Inside the C++ Object Model,by Stanley Lippman,Addison Wesley Longman,1996,280pages
深度探索C++物件模型,侯俊杰 译


层级四:设计观念的复用(C++/Patterns)
[Gamma95] Design Patterns:Elements of Reusable Object Oriented Software,
by Erich Gamma,Richard Helm,Ralph Johnson,and John Vlissides,Addison Wesley,1995.395pages
设计模式,李英军等译,机械工业出版社,2000.254页

[Alex2001]Modern C++ Design: Generic Programming and Design Patterns Applied
by Andrei Alexandrescu,Addison-Wesley,2001,352Paper


Genericity/STL系列:
第一个境界是使用STL:
[Josuttis99]:The C++ Standard Library -A Tutorial and Reference,by Nicolai M.Josuttis,
Addison Wesley 1999.799pages

第二个境界是了解泛型技术的内涵与STL的学理:
[Austern98]:Generic Programming and the STL -Using and Extending the C++ Standard
Template library,by Matthew H.Austern,Addison Wesley 1998.548page


第三个境界是扩充STL:
[Stepanov2001]:C++ Standard Template Library by P.J.Plauger,Alexander A.Stepanov,
Meng Lee,David R.Musser,Prentice Hall 2001

一篇非常好的c++学习方法,转自贴吧

原帖地址:点击打开链接http://tieba.baidu.com/p/1113064961      Javascript是世界上最受误解的语言,其实C++何尝不是。坊间流传的错误的C++学习方法一...
  • lsgqjh
  • lsgqjh
  • 2015年04月10日 20:06
  • 4589

Machine Learning---感知器学习算法

Machine Learning---感知器学习算法 引言 这里开始介绍神经网络方面的知识(Neural Networks)。首先我们会介绍几个监督式学习的算法,随后便是非监督式的学习。 一、感...
  • Stan1989
  • Stan1989
  • 2013年02月02日 16:40
  • 52903

JAVA学习步骤

尽量用google查找技术资料。有问题在stackoverflow找找,大部分都已经有人回答。多看官方的技术文档。ibm developerworkers的文章质量整体上有保障。平时花一些时间在git...
  • yy243
  • yy243
  • 2016年11月21日 09:30
  • 2385

深度学习的四个步骤

深度学习的四个步骤:每个阶段给出的学习资源
  • uncle_ll
  • uncle_ll
  • 2016年09月09日 15:46
  • 3469

解决机器学习问题的步骤

随着致力于应用机器学习问题,你会摸索出一个快速获取具有棒棒哒鲁棒性结果的模式或步骤,你可以在下一个项目中重用这个步骤,该步骤越强健,你得到可靠结果的速度就越快。 应用机器学习的步骤 5步法: 1...
  • neilol
  • neilol
  • 2016年05月17日 12:43
  • 923

机器学习的八个步骤

上个月,Kaggle 联合创始人兼 CTO Ben Hamner  在 Quora 上回答了有关 Kaggle、机器学习和人工智能的一系列问题。对于 Hamner 给出的《机器学习的八个步骤》的建议,...
  • levy_cui
  • levy_cui
  • 2017年04月24日 11:09
  • 641

算法学习过程

转自他人博客,取其精华. 一般要做到50行以内的程序不用调试、100行以内的二分钟内调试成功.//没有行数的概念,每次都要调... acm主要是考算法的,主要时间是花在思考算法...
  • zhembrace
  • zhembrace
  • 2017年05月19日 00:04
  • 438

机器学习解决问题的步骤

机器学习解决问题的步骤针对任何一个打算由机器学习算法来解决的问题,都有一种『套路』存在,只要按照这个模板『按部就班』就能够得到一个结果。就跟一个产品的生产流水线是一个道理。但是得到结果的好坏跟你是否是...
  • tuqinag
  • tuqinag
  • 2017年01月25日 17:14
  • 3016

【译文】学习深度学习的四个步骤

原文地址(访问需fq。。。)首先,如果你需要了解一些关于深度学习的基本信息,或者需要了解为什么深度学习会对未来有如此巨大的影响的话,请先看一下Andrew Ng的讲解视频: Andrew Ng:...
  • zgljl2012
  • zgljl2012
  • 2017年06月06日 23:43
  • 433

开发机器学习应用程序的步骤

通常从数据的提炼,到最后算法的应用,遵循如下几个步骤: 1、收集数据。 收集我们关心的数据,方法如:网络爬虫,一些设备发送过来的数据,如从物联网设备获取来的数据。 2、准备输入数据。 得到数据之后,我...
  • tongjinrui
  • tongjinrui
  • 2017年05月03日 19:45
  • 538
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++学习步骤
举报原因:
原因补充:

(最多只允许输入30个字)