热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MFC从哪里开始

最近想学MFC,但是不知道从哪里入手,看了好多视频,发现很多都是废话,浪费了很多时间却什么都没学到
最近想学MFC,但是不知道从哪里入手,看了好多视频,发现很多都是废话,浪费了很多时间却什么都没学到

24 个解决方案

#1


从写简单的对话框开始。  用VC6.0的向导生成例子,然后读代码去了解。

#2


MFC真的像迷宫,很难找到入口和出口,
事实上,它也是由winmain,创建主窗口,消息循环,窗口过程组成,
首先全局theApp构造函数先执行,然后执行隐藏的_tWinMain,然后调用InitInstance创建主窗口

#3


从hello world开始,多看例程

#4


应用角度看孙鑫视频
学习角度看侯捷的深入浅出

楼主,你要知道想完完全全透彻理解MFC原理的话还是有点难度的,毕竟是微软的东西。

#5


打个比方,学C语言是研究一棵树,你可以看清楚它的枝枝叶叶,但是学MFC是走入一片森林,要研究的是进出的路径。一开始就想把每行代码的来龙去脉搞清楚是做不到的。

我的经验是,不要一开始就去学相关的文档和理论书籍,包括那些经典书籍。一些傻瓜入门都是可以看看。视频是被动的听讲,效果是不好的。重要的就是动手和入门,模仿着做出一个程序,或者干脆在现成的例子上修修补补,学些小技巧,加深对开发环境和工程的了解,获得经验和自信,掌握基本的框架之后,再深入你具体涉及到的领域,循序渐进,有一定积累之后再去看理论资料和随机文档。

当然有天才做得更好,不过我认为这方法对普通人还是合适的。

#6


千万不要看侯捷的深入浅出,看了你会彻底失去信心,刚开始还是别看理论,先做应用,等熟练了再看看理论的东西

#7


MFC 程序运行步骤和主程序的调用树。
1)C++Init
2)CXXXApp theApp;初始化
  //其他全局变量初始化
  //全集变量初始化顺序,是不确定的。
  //1),2)的执行顺序,也是不确定的。 
3)主程序执行的函数调用树
  _tWinMain--WinMain 或者wWinMain ==>
     AfxWinMain==>
       theApp.InitInstance
       theApp.Run();===>消息循环
       theApp.ExitInstance
4)全局变量析构

  

#8


MFC对话框,和单文档搞明白了,然后多文档
然后学习控件,和资源文件的编辑。
然后学习API
然后学习其他Windows程序设计的知识,比如图像--位图,图标,比如线程,比如管道,比如是TCP/UDP。
比如Com ,ATL,ActiveX

#9


   MFC的话,市面上有很多关于VC++入门到精通的书籍,里面都基本详细的讲了MFC的开发,网上也有很多电子书,如果你找不到的话我可以发给你。
   说实话,要精通MFC好难,需要很长时间的编写代码,其实也不需要精通,除非你是搞语言研究的,因为如今的商业应用中,MFC的主流地位早已远去,只是作为辅助的,你现在只需要了解MFC开发的原理,着重看关于com方面的知识。

#10


我刚学的时候看过侯捷的MFC深入浅出 这本书很好 首先要对mfc的程序流程熟悉,怎么一步步执行的 在看书或者看视频的时候做一些相关的例子 一定不要只是看 要多写

#11


我最近也在学习MFC,老师每次布置一个任务,通过自己查找和阅读深入浅出,觉得这样进步很大的,比单纯看书来的快一些。

#12


现在还有人想弄MFC这么个老古董呀

#13


孙鑫vc视频
看前三节
别怕看不懂,反复看

#14


引用 13 楼 dcmilan 的回复:
孙鑫vc视频
看前三节
别怕看不懂,反复看

同意,另外,要多动手

#15



  个人观念,从兴趣开始,从彩票研发开发,在不断做小软件的基础上,不断积累经验, 遇到不懂的技术,就百度。 哥就是这样混过来的,但是哥,也悲剧啊,算法能力不强, 工作搞得不爽了

#16


Good luck~

#17


真的值得敬佩

#18




while(1)
{
   readbook();
   coding();

}

#19


先做应用,做项目。

#20


孙鑫的视频  讲的很基础  强烈推荐

#21


楼主不妨看看这个MFC入门教程
http://www.jizhuomi.com/software/257.html

#22


先照着例子去写,写多了 也就会了 。。。没什么 难理解的 

#23


先看孙鑫的视频,努力的编些代码,勤问身边比自己厉害的同学同事

推荐阅读
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 本文介绍了GTK+中的GObject对象系统,该系统是基于GLib和C语言完成的面向对象的框架,提供了灵活、可扩展且易于映射到其他语言的特性。其中最重要的是GType,它是GLib运行时类型认证和管理系统的基础,通过注册和管理基本数据类型、用户定义对象和界面类型来实现对象的继承。文章详细解释了GObject系统中对象的三个部分:唯一的ID标识、类结构和实例结构。 ... [详细]
  • 本文介绍了在Windows系统上使用C语言命令行参数启动程序并传递参数的方法,包括接收参数程序的代码和bat文件的编写方法,同时给出了程序运行的结果。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
    本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
  • Python脚本编写创建输出数据库并添加模型和场数据的方法
    本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。 ... [详细]
  • C语言的经典程序有哪些
    本篇内容介绍了“C语言的经典程序有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何 ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 796.[APIO2012]派遣在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿。在这个帮派里,有一名忍者被称之为Master。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • ejava,刘聪dejava
    本文目录一览:1、什么是Java?2、java ... [详细]
  • 数据结构与算法习题replacementselectionsort(置换选择排序)TimeLimit:1000msMemoryLimit:65536kBDescrip ... [详细]
  • YouareplayingthefollowingNimGamewithyourfriend:Thereisaheapofstonesonthetable,eachtimeoneo ... [详细]
  • 1、锁机制当前MySQL支持 ISAM, MyISAM,MEMORY(HEAP) 类型表的表级锁,BDB 表支持页级锁,InnoDB 表支持行级锁。很多时候,可以通过经验来 ... [详细]
author-avatar
b98625400
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有