C++通用框架和库:
Apache C++ Standard Library:是一系列算法,容器,迭代器和其他基本组件的集合
ASL 纤升:Adobe源代码库提供了同行的评审和可移植的C++源代码库。
Boost :大量通用C++库的集合。
BDE :来自于彭博资讯实验室的开发环境。
Cinder:提供专业品质创造性编码的开源开发社区。
Cxxomfort:轻量级的,只包含头文件的库,将C++ 11的一些新特性移植到C++03中。
Dlib:使用契约式编程和现代C++科技设计的通用的跨平台的C++库。
EASTL :EA-STL公共部分。
ffead-cpp :企业应用程序开发框架。
Folly:由Facebook开发和使用的开源C++库。
JUCE :包罗万象的C++类库,用于开发跨平台软件。
libPhenom:用于构建高性能和高度可扩展性系统的事件框架。
LibSourcey :用于实时的视频流和高性能网络应用程序的C++11 evented IO。
LibU 判源: C语言写的多平台工具库。
Loki :C++库的设计,包括常见的设计模式和习语的实现。
MiLi :只含头文件的小型C++库。
openFrameworks :开发C++工具包,用于掘竖态创意性编码。
Qt :跨平台的应用程序和用户界面框架。
Reason :跨平台的框架,使开发者能够更容易地使用Java,.Net和Python,同时也满足了他们对C++性能和优势的需求。
ROOT :具备所有功能的一系列面向对象的框架,能够非常高效地处理和分析大量的数据,为欧洲原子能研究机构所用。
STLport:是STL具有代表性的版本。
STXXL:用于额外的大型数据集的标准模板库。
Ultimate++ :C++跨平台快速应用程序开发框架。
Windows Template Library:用于开发Windows应用程序和UI组件的C++库。
Yomm11 :C++11的开放multi-methods。
WIN32 程序和MFC 程序生宏颂迅成的都是Windows应用程序。不同的是,Win32程序使用Windows SDK框架生成应用蔽此程序框架,默认该框架程序不使用MFC(微软基础类),生成的都是面向过程的程序框架,程序的入口樱并时WinMain,使用这个框架需要对Windows SDK程序比较熟悉;MFC程序,可以选择单文档、多文档和对话框的应用程序框架,该框架支持MFC,生成的程序框架,都是C++面向对象的应用程序,程序的入口是CXXXApp。
vc++是一款1998年埋扮推出的编译器(准确的说就是集成开发环境)。mfc是一款应用程序框架,它的出现甚至比vc++更早,所有前一位说vc++包括mfc是不正确的。而且不光vc++,vs里也提供mfc。准确的说class
wizard才是vc或者vs特有的,class
wizard这个插件作为vc等ide的一个功能提供了代码补全的功能,让用户使用mfc进行编程时更便捷。
但是,因为mfc是开源的,理论上你可以参考它的代码(如果你真有那个闲情逸致的话)把它做一定修改移植到别的ide上去用,如果你更有心,还可以为你移植的那个ide开发一个类似class
wizard的插件,那么那个ide也可以使用mfc了。
至于说mfc只是做界面的,这有点狭隘了,首先windows
api就提供了界面的绘制功能,你不用mfc一样可以创作窗口程序,并在其上绘图。其次,mfc是应用程序框架,它封装了常用的windows
api,将其以一定层次呈现在用户面前。在编译器不支持rtti的情况下,mfc的开弯中灶发培绝者生生地使用他们的方法在这个框架中提供rtti,将windows的消息响应机制通过message
map(消息映射),message
routing(消息路由)更自然地呈现在用户面前,在c++对容器的支持不那么完善的情况下,提供了便捷的链表类。总而言之,mfc绝不仅仅是做界面的。
最后说一句,mfc确实凝聚了一帮微软大牛的技术结晶,可是毕竟是20年前的结晶,事实上现在确实差不多被淘汰了(vc++也是)。。。。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)