【MFC开发(1)】MFC的介绍、与Qt的区别

一、MFC 的介绍以及优缺点

        MFC:微软基础类c++库(英语:Microsoft Foundation Classes,简称MFC),以C++类的形式封装了Windows API,并且包含一个windows应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC除了是一个类库以外,还是一个框架,在vc++里新建一个MFC的工程,开发环境会自动帮你产生许多文件,同时它使用了mfcxx.dll。xx是版本,它封装了mfc内核,所以你在你的代码看不到原本的SDK编程中的消息循环等等东西,因为MFC框架帮你封装好了,这样你就可以专心的考虑你程序的逻辑,而不是这些每次编程都要重复的东西,但是由于是通用框架,没有最好的针对性,当然也就丧失了一些灵活性和效率。但是MFC的封装很浅,所以效率上损失不大。MFC或多或少使用了面向对象的方法包装了Win32的- API,正因如此,这些API有时是C++,有时是C,甚至是C和C++的混合体。

优点:MFC说白了就是微软自家的东西,所以VC自带MFC工程向导,VC对MFC支持的也很好。对于界面方面实现起来简单,易于上手,能快速的制作简单的UI界面,执行效率高,生成的EXE或者其他程序可以直接在Windows系统上执行,生成的文件体积也比较小;

缺点:

(1)MFC无法创建大小动态可变的子窗口,必须重新手动修改代码来改变窗口的位置

(2)不能跨平台,程序只能运行在Windows系统,在 Linux、Mac 系统上是别想用了。

总结:MFC适合于开发对界面美化要求不高的软件。
 

二、Qt的介绍以及优缺点

        Qt:是一个C++的图形库由Trolltech在1994年左右开发,它可以运行在Windows,Mac OS X, Unix,还有像Sharp Zaurus这类嵌入式系统中。Qt是完全面向对象的,广泛用于开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。


优点:

(1)跨平台使用,包括Windows、linux、macos等

(2)完全面向对象,内部使用信号与槽机制,易于上手

(3)开发文档丰富,支持VS插件的形式进行开发。可以制作漂亮精美的软件UI界面。省时省力。

缺点:

(1)Qt有点过度封装,而且体积也稍大,执行效率没有MFC高,程序分发打包的时候需要将Qt的核心DLL一起随程序打包,不然程序跑步起来。当然也可以用静态库的方式编译,默认只生成一个Exe文件,但这样的话程序的体积会变的很大,不管怎么说Qt生成的文件在分发携带方面的方便性上赶不上Windows的原生程序或者MFC的程序。

总结:Qt适合于开发对界面美化要求较高的软件。

MFC 和 QT 就好比 手动档车与自动档车一样,前者开发软件太累,但可控性更加高些。
 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Demo.demo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值