是微软基础类库的简称
MFC(Microsoft Foundation Classes),是微软公司提供的一个类库(class libraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
MFC:微软基础类(Microsoft Foundation Classes),同VCL类似,是一种应用程序框架,随微软Visual C++开发工具发布。目前最新版本为10.0(截止2011年3月),并且发布了中文版。该类库提供一组通用的可重用的类库供开发人员使用,大部分类均从CObject 直接或间接派生,只有少部分类例外。
MFC应用程序的总体结构通常由开发人员从MFC类派生的几个类和一个CWinApp类对象(应用程序对象)组成。MFC 提供了MFC AppWizard 自动生成框架
Windows 应用程序中,MFC 的主包含文件为Afxwin.h
此外MFC的部分类为MFC/ATL 通用,可以在Win32 应用程序中单独包含并使用这些类。
由于它的易用性,初学者常误认为VC++开发必须使用MFC,这种想法是错误的。作为Application Framework,MFC的使用只能提高某些情况下的开发效率,只起到辅助作用,而不能替代整个Win32 程序设计。
MFC,微软基础类(Microsoft Foundation Classes),同VCL类似,是一种Application Framework,随微软Visual C++ 开发工具发布。目前最新版本为9.0(截止2008年11月)。该类库提供一组通用的可重用的类库供开发人员使用。大部分类均从CObject 直接或间接派生,只有少部分类例外。MFC 应用程序的总体结构通常由 由开发人员从MFC类派生的几个类和一个CWinApp类对象(应用程序对象)组成。MFC 提供了MFC AppWizard 自动生成框架。
Windows 应用程序中,MFC 的主包含文件为"Afxwin.h"。
此外MFC的部分类为MFC/ATL 通用,可以在Win32 应用程序中单独包含并使用这些类。
由于它的易用性,初学者常误认为VC++开发必须使用MFC。这种想法是错误的。作为Application Framework,MFC的使用只能提高某些情况下的开发效率,只起到辅助作用,而不能替代整个Win32 程序设计。
MFC,微软基础类(Microsoft Foundation Classes),实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎,VC++是WinDOS下开发人员使用的专业C++ SDK(SDK,Standard SoftWare Develop Kit,专业软件开发平台),MFC就是挂在它之上的一个辅助软件开发包,MFC作为与VC++血肉相连的部分(注意C++和VC++的区别:C++是一种程序设计语言,是一种大家都承认的软件编制的通用规范,而VC++只是一个编译器,或者说是一种编译器+源程序编辑器的IDE,WS,PlatForm,这跟Pascal和Delphi的关系一个道理,Pascal是Delphi的语言基础,Delphi使用Pascal规范来进行Win下应用程序的开发和编译,却不同于Basic语言和VB的关系,Basic语言在VB开发出来被应用的年代已经成了Basic语言的新规范,VB新加的Basic语言要素,如面向对象程序设计的要素,是一种性质上的飞跃,使VB既是一个IDE,又成长成一个新的程序设计语言),MFC同BC++集成的VCL一样是一个非外挂式的软件包,类库,只不过MFC类是微软为VC++专配的..
MFC是Win API与C++的结合,API,即微软提供的WinDOS下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方(如我是一方,微软是一方,Borland就是第三方)的编程语言来进行对WinDOS下应用程序的开发,使这些被开发出来的应用程序能在WinDOS下运行,比如VB,VC++,Java,Dehpi编程语言函数本质上全部源于API,因此用它们开发出来的应用程序都能工作在WinOS的消息机制和绘图里,遵守WinDOS作为一个 *** 作系统的内部实现,这其实也是一种必要,微软如果不提供API,这个世上对Win编程的工作就不会存在,微软的产品就会迅速从时尚变成垃圾,上面说到MFC是微软对API函数的专用C++封装,这种结合一方面让用户使用微软的专业C++ SDK来进行Win下应用程序的开发变得容易,因为MFC是对API的封装,微软做了大量的工作,隐藏了好多程序开发人员在Win下用C++ &MFC编制软件时的大量内节,如应用程序实现消息的处理,设备环境绘图,这种结合是以方便为目的的,必定要付出一定代价(这是微软的一向作风),因此就造成了MFC对类封装中的一定程度的的冗余和迂回,但这是可以接受的..
最后要明白MFC不只是一个功能单纯的界面开发系统,它提供的类绝大部分用来进行界面开发,关联一个窗口的动作,但它提供的类中有好多类不与一个窗口关联,即类的作用不是一个界面类,不实现对一个窗口对象的控制(如创建,销毁),而是一些在WinDOS(用MFC编写的程序绝大部分都在WinDOS中运行)中实现内部处理的类,如数据库的管理类等,学习中最应花费时间的是消息和设备环境,对C++和MFC的学习中最难的部分是指针,C++面向对像程序设计的其它部分,如数据类型,流程控制都不难,建议学习数据结构C++版。
MFC是微软封装了的API。什么意思呢?windows作为一个提供功能强大的应用程序接口编程的 *** 作系统,的确方便了许多程序员,传统的win32开发(直接使用windows的接口函数API)对于程序员来说非常的困难,因为,API函数实在太多了,而且名称很乱,从零构架一个窗口动辄就是上百行的代码。MFC是面向对象程序设计与Application framework的完美结合,他将传统的API进行了分类封装,并且为你创建了程序的一般框架,
[编辑本段]历史
MFC是在1992年的Microsoft 16位版的C/C++编译器的7.0版本中作为一个扩展轻量级的Windows API面向对象的C++封装库而引入的。此时,C++因为它在和API方面的卓越表现,刚刚开始被用来取代C应用于开发商用软件。因此,他们推出了替代早期的老式的字符界面的集成开发环境(IDE)的PWB。
有趣的是,MFC使用“Afx”作为所有的函数,宏及标准预编译头文件名的前缀。因为在MFC的早期开发阶段它叫“Application Framework Extensions”缩写为“Afx”。MFC这个名字被采用得太晚了以至于没来得及修改这些引用。
最近,MFC8.0和Visual Studio 2005一起发布了;MFC9.0和Visual Studio 2008一起发布。在免费的Express版本的Visual Studio 2005/2008中没有包含MFC。
作为一个强有力的竞争对手,为Borland的Turbo C++编译器设计OWL(Object Windows Library)在同一时间也发布了。但最后,Borland停止了对OWL的继续开发并且不久就从Microsoft那里购买了MFC头文件,动态链接库等的授权,微软没有提供完整的MFC的集成支持。之后Borland发布了VCL(Visual Component Library)来替换OWL框架。
[编辑本段]版本更新
新产品版本 MFC版本
Microsoft C/C++ 7.0 MFC 1.0
Visual C++ 1.0 MFC 2.0
Visual C++ 1.5 MFC 2.5
Visual C++ 2.0 MFC 3.0
Visual C++ 2.1 MFC 3.1
Visual C++ 2.2 MFC 3.2
Visual C++ 4.0 MFC 4.0 (mfc40.dll included with Windows 95)
Visual C++ 4.1 MFC 4.1
Visual C++ 4.2 MFC 4.2 (mfc42.dll included with the Windows 98 original release)
eMbedded Visual C++ 3.0 MFC 4.2 (mfc42.dll)
Visual C++ 5.0 MFC 4.21 (mfc42.dll)
Visual C++ 6.0 MFC 6.0 (mfc42.dll)
eMbedded Visual C++ 4.0 none
Visual C++ .NET 2002 MFC 7.0 (mfc70.dll)
Visual C++ .NET 2003 MFC 7.1 (mfc71.dll)
Visual C++ 2005 MFC 8.0 (mfc80.dll)
Visual C++ 2008 MFC 9.0.21022 (mfc90.dll)
Visual C++ 2008 with Feature Pack MFC 9.0.30411 (mfc90.dll)
MFC为Mass Flow Controller的缩写,即质量流量控制。流体在旋转的管内流动时会对管壁产生一个力,它是科里奥利在1832年研究水轮机时发现的,简称科氏力。质量流量计以科氏力为基础,在传感器内部有两根平行的T型振管,中部装有驱动线圈,两端装有拾振线圈,变送器提供的激励电压加到驱动线圈上时,振动管作往复周期振动,工业过程的流体介质流经传感器的振动管,就会在振管上产生科氏力效应,使两根振管扭转振动,安装在振管两端的拾振线圈将产生相位不同的两组信号,这两个信号差与流经传感器的流体质量流量成比例关系。计算机解算出流经振管的质量流量。不同的介质流经传感器时,振管的主振频率不同,据此解算出介质密度。安装在传感器器振管上的铂电阻可间接测量介质的温度。
质量流量计直接测量通过流量计的介质的质量流量,还可测量介质的密度及间接测量介质的温度。由于变送器是以单片机为核心的智能仪表,因此可根据上述三个基本量而导出十几种参数供用户使用。质量流量计组态灵活,功能强大,性能价格比高,是新一代流量仪表。
测量管道内质量流量的流量测量仪表。在被测流体处于压力、温度等参数变化很大的条件下,若仅测量体积流量,则会因为流体密度的变化带来很大的测量误差。在容积式和差压式流量计中,被测流体的密度可能变化30%,这会使流量产生30~40%的误差。随着自动化水平的提高,许多生产过程都对流量测量提出了新的要求。化学反应过程是受原料的质量(而不是体积)控制的。蒸气、空气流的加热、冷却效应也是与质量流量成比例的。产品质量的严格控制、精确的成本核算、飞机和导d的燃料量控制,也都需要精确的质量流量测量。因此质量流量计是一种重要的流量测量仪表。
质量流量计可分为两类:一类是直接式,即直接输出质量流量;另一类为间接式或推导式,如应用超声流量计和密度计组合,对它们的输出再进行乘法运算以得出质量流量。
直接式质量流量计 直接式质量流量计有多种类型,如量热式、角动量式、陀螺式和双叶轮式等。
(1) 主要参数:
质量流量精度: ±0.002×流量±零点漂移
密度测量精度: ±0.003g/cm3
密度测量范围: 0.5~1.5g/cm3
温度测量范围: ±1°C
(2) 传感器相关数据:
环境温度: -40~60°C
介质温度: -50~200°C
防爆类型: iBⅡBT3
关联设备: 配套变送器
(3) 变送器相关数据:
工作温度: 0~60°C
相对湿度: 95%以下
电 源: 220±10%VAC,50Hz或24±5%VDC,40W
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)