如何理解MFC程序和WIN32程序的区别?

我的理解是用WIN32的API写的程序可以在不同平台运行,而MFC的API函数写的程序却只能在WINDOWS下运行,对么?另外可以在WIN32的程序里混用MFC的API么... 我的理解是用WIN32的API写的程序可以在不同平台运行,而MFC的API函数写的程序却只能在WINDOWS下运行,对么?另外可以在WIN32的程序里混用MFC的API么,或者MFC程序里调用WIN32API?
请告诉我我的理解对么
展开
 我来答
haohaojian
2007-08-04 · TA获得超过606个赞
知道小有建树答主
回答量:493
采纳率:0%
帮助的人:263万
展开全部
你的理解不对
Win32 api只是接口,只能被用到别的东西里才显的出价值,比如用在了MFC、DLL、串口、SOCKET,COM+。
而MFC是基本类库,是属于C++的范畴,WIN32 API基本上都是结构类型的应用,里面没有类,所以MFC可以调用API,API不能调用MFC!

通过传口,利用MFC可以将C++程序各种的WIN32的环境,MFC只能在WIN32环境下使用,API也是

Win32 API是 Windows系统下32位 Application Program Interface 应用程序接口,MFC是Microsoft Function Class 微软函数类库, 前者更加底层,在MFC程序里,可以调用WIN32 API的,MFC本来就用了很多WIN 32API,MFC编写的程序可以用在各种Windows环境下的
百度网友1b4cc0f
2007-08-05 · TA获得超过1万个赞
知道大有可为答主
回答量:4241
采纳率:42%
帮助的人:1948万
展开全部
win32 api = 32位windows应用程序编程接口,是windows操作系统为32位应用程序开发者提供的统一的编程接口,任何运行在32位windows操作系统(win95、win98、winMe、win2k、winNT、winXP、vista)上的应用程序,最终都通过调用win32 api接口来实现其功能,即使是.net平台,当前其运行环境也建立在win32 api接口上,而mfc是微软为windows下的C 开发者提供的类库,由于win32 api接口是C语言形式的,对C 开发者颇为不便,微软在1989年推出mfc,目的是简化windows应用程序开发、并为C 开发者提供方便的类库,查看mfc源代码,可以发现其内部实现调用了win32 api,mfc所提供(调用)的win32 api只是全部win32 api的一个常用子集,mfc并未封装全部win32 api功能,因此在编写mfc时,根据需要还要直接调用win32 api
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友881a6a941
2007-08-04 · TA获得超过5793个赞
知道小有建树答主
回答量:1100
采纳率:0%
帮助的人:1004万
展开全部
其实一个程序全部都是由 Windows API 函数不断的调用而创建出来的(当然程序中的一些处理结构除外,我指的是界面等),所谓 Win32 程序就是运行在 32 位操作系统 Windows 下的程序(以前还有16位的),你可能会看到所谓 SDK 和 MFC ,其实 SDK 就是自己编写调用代码,调用 Windows API 函数来实现一个程序的界面等功能,当然这种方法要写的代码是非常多的,对于一个实际点的程序不可能写那么多代码,所以微软就将这些API分类封装起来,组成了一个库也就是MFC库,MFC库以类的方式提供给用户使用,比如我要实现一个网络功能,那么我可以使用 API 函数 Socket 来创建一个套接字,而且还要进行初始化,等等,如果对于一个大型网络程序,是非常麻烦的,而MFC为我们提供了一个 CSocket 的类,我们使用这个类就可以非常方便的完成所有功能.当然除了 CSocket 还有其他类比如 CDialog ,CDC.等等.MFC内部实现其实也是调用的API函数.所以理论上说SDK编写的程序比MFC要快,但是很麻烦,但是实际也就是几纳秒到几毫秒的区别,所以根本不存在,当然MFC也有他的不好的地方比如他封装了消息循环结构改成一个消息映射,这样对一些特殊的功能实现起来会比较麻烦,比如消息二次循环实现起来会比较麻烦.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
alpswolf
2007-08-05 · TA获得超过3520个赞
知道大有可为答主
回答量:1989
采纳率:0%
帮助的人:1397万
展开全部
Win32和MFC都是建立在消息机制上的,没有消息机制,两者什么都不是.因为只有windows操作系统采用消息机制,所以两者都只能在windows下运行.
win32里可以用mfc,mfc里也可以用win32,因为两者都是用API函数实现编程的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fascinating_li
2007-08-06 · TA获得超过844个赞
知道小有建树答主
回答量:1944
采纳率:0%
帮助的人:1297万
展开全部
哀...哪那么多费话啊.MFC封装了API...底层都是API函数...
在WINAPI工程中想用MFC比较麻烦,没有人这么搞.晕..
用MFC就是方便...API底层的都要你自己写...代码多...手酸...但是灵活...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式