软件注册站
热情软件屋

 
sdk与mfc区别有哪些
编号: QA004150    
建立日期: 2001年4月24日 最后修改日期: 2004年2月29日
所属类别: C/C++ - 新手问题
   
    windows95/98
    vc++6.0
    请问sdk与mfc区别有那些,编码时区别又在那里?我有一些个人的认识,长久得不到印证,请指导!对于上述两问题我是这样认识的:1、sdk与mfc的区别在于mfc封装了大部分的api,而sdk只是mfc的一个真子集。2、sdk与mfc编码时的区别为:SDK编码时,包括程序框架(比如消息处理器、主窗口消息回调函数等)在内的代码全为自己编制,但所利用的API等接口全来自SDK的头文件和库文件;而mfc系统会生成程序框架,当然接口全来自于mfc。不知我的认识有没有认识不对或不全的地方。(huxiao_ping)
   
    说“SDK只是MFC的一个真子集”是错误的,因为有部分API函数MFC没有封装,不过这些函数你在MFC程序中都可以使用。MFC主要封装的是界面、文件、WinInet和线程等函数。SDK是基于C语言的,而MFC是基于C++的,这是最根本的区别。MFC除了封装API,最重要的是它的体系结构,它所使用的Doc/View结构是SDK中没有的,这种架构是比较特殊的。尽管Doc/View结构不是微软的发明,但它是MFC的特色。
    
    滋兹问:
    "而MFC是基于C++的",我原来以为MFC是VC专用的。在C++Builder里面也可以用MFC库么?如果不能,C++Builder用什么呢?SDK基于C语言,那由什么来基于C++呢?
    :MFC最初是由微软设计,专供VC++用的,但是C++ Builder也支持,参见QA001956 "如何使C++Builder VCL程序能使用MFC的类"。C++ Builder自己也有一个类库,叫VCL。以前的Borland C++使用OWL类库。微软开发Windows时使用的是C语言,所以最初设计SDK时并没有考虑C++。
    
    相关问题:
    QA002580 "Win32 SDK是怎样一个软件"

    

此问题由李海回答。

附加关键字:编程, 源程序, programming, source code, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, 新手问题, newbie, faq

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio