MFC、ATL和CLR是VC2005内置的3大库,涵盖了windows的各种开发方法和开发应用。当然关于C++开发的库不止这3个,不过这3个是微软推荐。从编程所处层次而言,WIN32为最底层,其次是MFC.然后是CLR. WIN32 winAPI MFC MFC类库 CLR .net库
1. WIN32常规就是不用MFC,使用API函数编的程序。
2. MFC库有很多年的历史了,MFC是基于Windows API 的简单封装。其核心架构基于"Document/View"架构(20年前被认为很潮流的一种概念)和消息流动机制。这个库自从VC6开始到现在都没有多大改动。MFC封装的范围包括GUI,IO,数据库,网络编程等等方面。但是很多系统开发必须的api都没有封装,这样开发者一般都在MFC的基础上自己处理与业务相关的任务。事实上很多人用MFC只是利用其GUI部分的封装。这个库GUI处理的效率也并不是很高,有时候与UI处理相关的代码会占到整个项目的一半甚至更多。总的来说,这是一个垂老的库,微软在10年以来,除了对MFC进行修修补补以外,没有进行大的改进或者更新。如果你问MFC还会活多久?恩,这是个问题。如果有一天MFC不在了,微软在这个级别上并没有其他产品能够代替它。
3. CLR库是随着.Net Framework 2 和VS2005一起发布的库,其核心的实现和C#,VB.net 一样。都是基于公共语言运行库。.Net Framework封装了大量系统的api,以类库的形式提供给开发者。C++中的CLR库可以使用其中和本机代码有关的部分,目前C++还不能涉及到asp.net部分。CLR库中的C++颠覆了很多标准C++的传统,甚至可以说,这里的C++不是C++,只是披着C++的皮干其他的事。这里的C++更像是C#或者类似的语言。所以这里不叫C++,而叫做C++/CLI,值得一提的是,有关C++/CLI的部分目前还没有被标准C++接受,最近微软有关C++/CLI标准化的提案被C++标准化委员会拒绝了。所以C++/CLI目前还是微软的一家之言。
4. ATL用于编写COM程序。ATL库貌似也年纪很大了,至少在我接触到VC的时候就有它的存在了。这个库可以追溯到COM组件,因为ATL的目的就是帮助开发者更好的与COM交互。到底什么时候有COM这个东西的?我也不知道,我只知道COM是有16位版本的,在Windows升级到32位的时候COM也随着升级到了32位。COM就像一些封装好的类对象一样,通过封装系统的api,提供一些标准的方法来给你使用。所以系统中有什么组件,就可以在ATL中用什么方法。所以ATL不止可以写ActiveX,也可以有window,也可以有其它。有时候有些微软发布的功能是只以COM组件的形式发布的,例如MSXML,这时候MFC就不适合,是要ATL来处理的。但是ATL在处理UI这方面并不是很强,所以微软工程师有一个开源的UI 框架,叫做WTL,专门用来处理UI的。ATL库的缺点是,作为模板库,在出现错误的时候会比较麻烦,出错提示会牛头不对马嘴。
加入流量联盟,提升流量
相关推荐
- **丰富的库支持**:Visual C++ 包含了大量的库文件,如MFC、ATL等,极大地简化了Windows 应用程序的开发过程。 3. **应用领域**: - **桌面应用程序开发**:Visual C++ 被广泛用于Windows 桌面应用程序的开发,...
5. **CLR(Common Language Runtime)支持**:对于托管代码的开发,Visual C++支持.NET框架,允许C++程序员使用.NET功能。 6. **调试器和支持工具**:包括用于调试、性能分析、内存检查等的工具,帮助开发者优化和...
1. 示例代码:展示了如何使用MFC、ATL或其他Visual C++特性来解决问题或实现特定功能。 2. 模板项目:可以作为新项目的起点,比如简单的Win32应用程序、DLL项目或是使用DirectX的图形项目。 3. 工具和实用程序:可能...
5. **CLR(Common Language Runtime)与.NET Framework**:虽然主要面向C++,Visual C++也支持.NET框架,可以编写托管代码,利用CLR执行。C++/CLI是C++的一个扩展,允许开发者混合编写原生C++和托管代码,无缝对接...
5. **CLR(Common Language Runtime)支持**:Visual C++ 2010 Express支持.NET框架,允许C++程序员编写托管代码,与.NET平台无缝集成。 6. **调试工具**:IDE内置了强大的调试器,支持断点、单步执行、变量查看、...
5. **CLR(Common Language Runtime)支持**:通过.NET Framework,Visual C++支持托管代码,允许开发C++/CLI项目,这使得C++可以与.NET生态系统中的其他语言(如C#、VB.NET)无缝交互。 6. **IntelliSense**:...
5. **CLR(Common Language Runtime)与.NET Framework**:虽然主要与Visual Studio中的.NET语言(如C#、VB.NET)相关,但Visual C++也可以通过Managed C++或C++/CLI来利用CLR,实现跨语言的互操作性。 6. **动态...
《Visual C++.NET(2008)典型案例[郑阿奇][电子教材].rar》是一部专为想要深入理解和掌握Visual C++.NET 2008编程技术的读者准备的电子教材。作者郑阿奇,以其丰富的教学经验和实践积累,为我们揭示了C++在.NET平台...
5. **MFC和ATL**: 虽然.NET框架提供了新的开发方式,但Visual C++仍然支持传统的Microsoft Foundation Class (MFC)库和Active Template Library (ATL)。这些库适用于开发Win32 API级别的应用程序,对于需要高效和...
3. **CLR(Common Language Runtime)支持**:Visual C++支持.NET Framework,允许开发托管代码,这使得C++程序员可以利用.NET的特性,如自动垃圾回收和类型安全。 4. **C++/CLI**:这是一种扩展的C++语法,用于...
这本书是关于使用 Microsoft Visual C++.NET 进行编程的核心参考资料。它包含了第六版的全部内容,为读者提供了深入理解 Visual C++.NET 的各个方面所需的知识和技术。本书不仅适合初学者作为入门指南,也适合经验...
这本书详细阐述了Visual C++的各种特性,包括MFC(Microsoft Foundation Classes)框架、ATL(Active Template Library)、C++标准库在Visual C++中的实现以及.NET Framework的整合。 1. MFC框架:MFC是Microsoft为...
3. **CLR(Common Language Runtime)与.NET Framework**:虽然Visual C++支持传统的C++编程,但它也集成了.NET Framework,允许开发者使用C++/CLI来编写.NET应用程序,享受跨语言的互操作性。 4. **IDE...
5. **CLR(Common Language Runtime)**:虽然不是专门针对C++,但Visual C++也可以与.NET Framework集成,利用CLR运行时环境来编写托管代码,即C++/CLI。 6. **IntelliSense**:Visual C++的智能感知功能,能自动...
1. **MFC(Microsoft Foundation Classes)框架**:MFC是Visual C++中的核心部分,提供了一套面向对象的类库,基于C++实现了Windows API,简化了Windows应用程序的开发。通过MFC,开发者可以快速构建用户界面,处理...
4. **CLR(Common Language Runtime)与C++/CLI**:Visual C++ 2010支持.NET框架,通过C++/CLI(Managed Extensions for C++)可以编写托管代码。这部分内容会涵盖如何在C++中利用.NET功能,如泛型、垃圾回收、类型...
Visual C++是Microsoft Visual Studio家族的一员,它包括了C++编译器、集成开发环境(IDE)、MFC(Microsoft Foundation Classes)库、ATL(Active Template Library)以及CLR(Common Language Runtime)等组件。...
在《Visual C++.NET开发手册》中,读者可以学习到如何使用MFC(Microsoft Foundation Classes)库来创建Windows应用程序。MFC是微软提供的一套C++类库,封装了Windows API,简化了窗口、对话框、控件等的创建。此外...
4. **CLR(Common Language Runtime)**:是.NET框架的一部分,支持跨语言的运行时环境,使得Visual C++可以创建托管代码。 二、项目和解决方案管理 在Visual C++中,项目是代码的容器,解决方案则可以包含多个...