确切说应该比较的是QT和MFC两个界面库
QT使用的编译器是MinGW,即Linux下的GCC移植到windows的版本
MFC使用的编译器是Visual C++
QT的应用主要在Linux下,但是它本身是跨平台的,也支持其他操作系统,是现在比较著名的界面库,著名的KDE就是使用QT开发的
MFC是提供给VC的,但是它主要是代码库,不像VCL和编译器挂钩很多,但是MFC主要是对windows API的封装,所以只能用于windows平台
根据你所说的方面,简单比较一下:
1.开发速度
整体来说可能MFC会快捷一些,因为windows平台的开发工具大多很智能,因为立足于windows的开发人群很广,从菜鸟到专业人士,但是QT由于基于Linux,可用的开发工具不多,大都比较专业,多是第三方产品,而且集成度不大,第三方库也没有MFC的多,从这一点MFC略胜一筹,但是QT自从被Nokia收购后,官方发布了跨平台集成开发环境QTCreator,所以之后走向就不好说了,个人总体感觉QT Creator和VS.net差距比较大,还需改进
但是从库本身来说QT集成的功能较MFC庞大,而且使用的封装技术信号和槽也是比较受到赞许的,比如QT Script为QT提供嵌入式脚本,QT界面库支持CSS,所以QT做出来的界面比MFC要好,而且比较容易,MFC就需要借助第三方库了
因为MFC是浅层封装(最新的2008 sp1加入了BCG的高级界面库,可能有所改善)windows SDK,以降低使用windows SDK引起的开发效率的降低,和开发难度的增加
所以QT库是比MFC优秀的,两个库都经受了时间的考验,稳定性都很高,Bug几乎没有
2.运行效率
MFC由于其浅层封装的特点,所以运行效率是比较高的,加上vc对windows的针对性优化,整体性能是比较高的,但是如果加入第三方库就不敢保证了
QT因为库比较庞大,封装层次较深,所以运行效率较MFC为低,但是在现在的机器配置下,C#大家都不介意了,这些会引起人们的介意吗?
3.应用范围,现在windows的普及范围谁能比过,所以MFC的客户量比较多,QT主要是Linux下的开发人员在使用,但MFC也只是得益于windows(感觉又是一次捆绑战略)
MFC不支持嵌入式开发(主要指手机平台),但是QT有对应的模块,但是现在Java的天下又有谁能撼动?
4.学习难度
QT的封装哲学比较明晰,和系统隔离的比较好,门槛不高
MFC较难精通,因为深入开发之后SDK还是要了解的,否则程序感觉比较儿童化,呵呵
选择工作的方向,就现在来说基于vc的开发是比较多的,所以就业比较好
Linux下的QT开发的就业情况还有待提高,但是专业方面,比如企业级的开发,或者涉及了Linux系统,QT还是可以的
分享到:
相关推荐
QT是一个跨平台应用程序和UI开发框架。windows开Qt开发方法:一、Qt Creator+MinGW 或者 Qt Creator+VC++ Compiler二、QT4.8.5 for Windows(VS2015+VS插件)。本实例为VS2015+Qt+Qt插件中开发Qt应用程序同时调用MFC...
MFC程序调用Qt界面程序框架使用说明;调用流程及工程搭建案例;文档包含详细流程和关键代码;标注地方需要特别注意。开发学习讨论使用。
MFC 调用QT制作的界面,非常好用,值得学习。
简介:本人学习Qt一个星期了,利用Qt做的仿360界面,然后打包成动态库。 用C++的MFC对话框按钮调用Qt界面动态库,经测试成功。
一个QT使用MFC的例子,示例为QT工程,其中引入MFC库,使用CString类,MessageBox方法进行了验证。示例工程为QT4+VS2013。此方式在QT3,QT4,QT5和VC6,VS2013,VS2015,VS2018中亦可使用。
QT调用MFC生成的动态DLL,非空洞练手而写的例程,而是工程中为解决QT中打开文件QFileDialog时某些机器闪退的问题,有想了解混合编程调DLL的同学和遇到使用QFileDialog时程序闪退问题的同学可借鉴
通过使用Qt开发框架,生成dLL动态库,供MFC执行程序调用。实现MFC调用Qt界面显示。
对新手学习Qt来说,建立主窗口界面,但是控制按钮调用两个独立ui界面出现很多的错误。本资源为源码,可以通过点击按钮不断切调用两个不同ui界面来显示到主窗口界面
编写QT的dll,QT调用QT的dll,QT调用外部的dll,MFC程序调用QT的dll,
QUI-master_QT,MFC界面美化包_QT_QT界面美化_qt美化_qt美化包_源码.zip
QUI-master_QT,MFC界面美化包_QT_QT界面美化_qt美化_qt美化包.zip
Qt 两个窗口相互切换,Qt信号与槽的机制,实现两个窗口通过点击按钮完成互相切换 Qt 两个窗口相互切换,Qt信号与槽的机制,实现两个窗口通过点击按钮完成互相切换
将Qt控件和窗口封装进dll中,并使用MFC和Qt应用程序写出demo来调用该dll。将dll中封装的Qt窗口嵌入到主程序中,实现窗口渲染和消息传递。
MFC调用QT类库,实现QMessagebox弹出提示,在MFC中动态创建QT控件!
qt 界面控件封装库。图标和弹出框和引导界面的封装集合等
MFC到Qt的迁移-演练
资源包括:新编Win32 API大全.CHM MFC类库详解.chm MFC.chm MFC9.0层次结构图.bmp VC6.0层次结构图.gif QT4.1.chm qt42-class-chart.png C++ LibraryFunctions + STL.chm CppReference.chm
Qt如何使用lib库封装界面一(Qt5动态链接库创建和使用)
几个QT工程界面美化的举例分享,其中包括仿360界面类似美化,世界杯进制软件界面实现及部分其他图片界面。
该资源能够使用qt生成dll, 同时又mfc dll的例程,同时有使用qt调用 mfc 和qt dll的例程 。对于 学习使用qt dll很有帮助。