人生导师——如何学习C++的Windows方向
原来发在百度上,今天被人挖坟挖出来了,我就再贴出来吧。
-----------------------有什么说的不对的地方----------------------
本文原创,转载请注明出处并保持文章的完整性。
本文链接:http://blog.csdn.net/wlsgzl/article/details/42124341
----------------------------你TM来咬我啊-----------------------------
刚给贴吧里一个人写的。顺便发你一份吧。
如果大神看到了,请不要喷我,万望指正。 一般大学课程,C++用谭浩强的书。很多坏习惯都是这本书导致的,这,是很坑的。
推荐 C++ prime plus(应该是这个名字吧)。如果你们没有开设过C,或者你没有学好C的话,也不要紧,忘掉就好,没有C的基础更好。
他们的指导思想是不一样的。 看完了之后呢?看 C陷阱与缺陷。
你可能会觉得这是C的没必要。
是的,这是C的,但是C++ 和C的指针、数组等都是一样的,所以“你值得拥有”,一次看不懂不要紧,先了解下。 然后呢?该选平台了。Win32平台,还是Linux/Unix,这是个问题。
看在钱的面子上,Linux/Unix好。看在游戏的份上,当然是Win32了。 我只在Win32上开发,所以接下来我只说这个方向。 有了基本的基础后,可以开始进一步学习了。
先学习下Windows 32 位程序开发,这里只需要学习 简单hello world 就行了。
就是自己动手写一个Win32窗口版的hello world。这里一定要记住这个大体的框架,同时要自己能够处理消息循环。
有一本经典的 Windows程序设计(第五版),可以看下。 之后就可以看MFC了。
你可能要问,还有好多没学呢。是的,先学会Win32的基本结构,在后面学习MFC的时候,进行穿插的学习,可能更好。
在MFC部分,学习除单文档 、多文档 、序列化、 报表、打印、 文档/视图、ActiveX控件、定制向导以外所有的部分。
其中MFC的宏一定要弄懂,可以用铅笔跟着书写写画画,你一定要买纸质的书。 之后呢?可以再看一遍C陷阱与缺陷。 然后学习Windows核心编程。
这是本很好的书。如果觉着这本书还不够的话,还可以看Windows应用程序捆绑核心编程。 到这里实际上你可以胜任大多数简单工作了。 之后,如果想做顶层,可以看下COM技术内幕,看下设计模式,然后看大象-Thinking in UML(第二版)。
做底层的话,看罗云彬的Win32汇编、张帆的Windows驱动。 当然,如果你会图像视频算法或者其他的专业算法的话,可以不看这些。
人生导师——如何学习C++的Windows方向的更多相关文章
- Git学习系列之Windows上安装Git详细步骤(图文详解)
前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windo ...
- Git学习系列之Windows上安装Git之后的一些配置(图文详解)
不多说,直接上干货! 前面博客 Git学习系列之Windows上安装Git详细步骤(图文详解) 第一次使用Git时,需要对Git进行一些配置,以方便使用Git. 不过,这种配置工作只需要进行一次便可, ...
- osg for android学习之一:windows下编译(亲测通过)【转】
1. 首先需要一个OSG for android的环境 (1)NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一):新 ...
- TortoiseGit学习系列之Windows上本地代码如何通过TortoiserGit提交到GitHub详解(图文)
不多说,直接上干货! 前面博客 TortoiseGit学习系列之Windows上TortoiseGit的安装详解(图文) 上面博文给大家讲解了一下如何本地安装TortoiseGit. 这篇为大家讲一下 ...
- PHP学习课程和培训方向学习路线分享
php语言的优越性,集结了很多的开发爱好者,无论行业前景和个人发展来说,php正飞速的发展,php在不断兼容着类似closures和命名空间 等技术,同时兼顾性能和当下流行的框架.版本是7之后,一直在 ...
- Python学习笔记 for windows
学习来源 http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738136 ...
- TestLink学习二:Windows搭建TestLink环境
环境准备: 搭建php5.4.39+apache2.2+mysq5.5.28l环境 (可参考http://www.cnblogs.com/yangxia-test/p/4414161.html) (注 ...
- TestLink学习一:Windows搭建Apache+MySQL+PHP环境
PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...
- 操作系统学习笔记(三) windows内存管理
//系统物理页面是由 (Page Frame Number Database )简称PFN数据库来进行管理,实际上是一个数组,每个物理页面都对应一个PFN项. 进程的地址空间是通过VAD(Virtua ...
随机推荐
- SQL Server技术问题之存储过程与sql语句的优缺点
优点: 1. 允许模块化程序设计.2.可维护性高,只需创建存储过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次.存储过程可独立于程序源代码而单独修改,而不需要更改.测试以及重新部署程序集 ...
- 点餐APP 冲刺三总结
一转眼所有的冲刺都完成了,而今次的冲刺主要是完善数据库,而我们 也成功地实现了,虽然过程很艰辛,但是我们每一个人都学习到了很多新 知识,这是最好的收获.因为今学期没有软件工程的课程,所以大家都是 利用 ...
- CheckListBox的实现方式分析
实际项目中常常要实现有CheckBox列表框.但是WPF没有自带这样的一个控件,下面就用Style来实现这样的功能.而对于CheckBox列表框,又常常会有一个Select All的CheckBox来 ...
- 用C#开发的双色球走势图(一)
首先声明,个人纯粹无聊之作,不作商业用途. 我相信每个人都拥有一个梦想那就是有朝一日能中500W,这个也一直是我的梦想,并默默每一期双色球或多或少要贡献自己一点点力量,本人并不属于那种铁杆的彩票迷,每 ...
- Android开发总是难以入门
发现自己很难入门,是真的太难,还是自己主观拒绝.
- 如何把maven项目转成web项目
创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web ...
- Hibernate关联映射及高级查询
一.Hibernate中的关联关系 1.1.单向一对多关联关系 按照以下步骤配置hibernate中持久化类的一对多对象关联: (1).持久化类添加关联类的相关属性及getter/setter方法. ...
- 【转载】delete table 和 truncate table 的区别
使用delete语句删除数据的一般语法格式: delete [from] {table_name.view_name} [where] 将XS表中的所有行数据删除 delete XS 执行完后,发现X ...
- [ASP.NET MVC] 使用Bootsnipp样式
[ASP.NET MVC] 使用Bootsnipp样式 前言 在「[ASP.NET MVC] 使用Bootstrap套件」这篇文章中,介绍了如何在Web项目里使用Bootstrap套件,让用户界面更加 ...
- domain规划
user-generated content 用户产生内容 和 admin-generated content 管理员产生内容,要区分开来,便于不同的图片压缩.备份.带宽.CDN.审核方案. 图片(j ...