现阶段关于MFC的一些了解

本文对比了MFC和QT两种Windows编程框架。MFC作为较早出现的框架,虽然资料丰富,但在对象通信机制和数据绑定等方面存在不足;而QT则以其跨平台性和良好的对象通信机制受到推崇。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1 关于WIN32,MFC,.NET,QT。WIN32里面提供了windows的API。MFC是对WIN32更高层次的类的封装。.NET不是开发平台,是虚拟机,相当于Java的JVM,编译后的中间语言可以在.NET上执行,从而实现与平台无关,在不同平台上运行不需要重新编译。QT优点在于平台无关性——纯粹的C++而与windows无关,无论是桌面应用还是移动应用都能很好的工作——QT也是从91年就开始研究的。


2 为什么选择MFC,想学系统有关的编程,能更好的理解与操作系统的互动,或者一些底层的东西。在这个过程也学习一些winapi。如果直接学习winapi难以见到实际做出来的东西,可能影响自己学习的动机。另外MFC发展了这么久,有更多资料,更多人的意见可以参考,通过这个入门能更快进步。MFC较成熟,但是已经是25年前的东西。

有人说MFC要淘汰了,有些思想落后了,应该学习QT,QT在21世纪有了长足进步。做界面可以选择更加华丽的WPF。——要去学Qt,很多厉害的人讲Qt更好。

有些人之所以觉得MFC不能容忍,目前了解到几个原因:

a. MFC 考虑到兼容性问题——兼容旧版本,导致后期没有什么发展,只是沿着老思路完善了细节。

b.MFC没有定义好对象间通信机制——我现在不理解

c. 无法完成data binding.——databiding是什么

d.用了很多C语言的宏,宏有很多缺点,会带来很多问题。这在C++中是不能容忍的。


3 C++的集成开发环境包括:1 Visual studio(VC)   2 Borland C++   3 C++ Builder  4 eclipse(CDT)    5 Dev c++

参考  http://blog.youkuaiyun.com/caozhenyu/article/details/3746583


4  MFC相比VCL(Delphi用的框架)落后了一个时代。微软内部使用尚不成熟的基于ATL的WTL来补充MFC。

参考  http://blog.youkuaiyun.com/stpeace/article/details/12876473

C#也是微软在界面方面推出的改进C++的语言?C#主要做桌面(界面)和网络




——修改于2017.4.6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值