什么现代的C + +库应该在我的工具箱?
我已经离开了C ++游戏大约10年了,我想重新开始一个商业应用程序。 目前使用哪些图书馆?
- 用户界面(例如, wxWidgets , Qt )
- 数据库
- 通用(如Boost , Loki ,STL)
- 穿线
- testing
- networking/sockets
我期待跨平台兼容(尽可能的开箱即用)。
你依靠什么库? 他们提供什么function,使他们“不可或缺” ?
请参阅下面的答案以获得总结。
适用于商业(或非商业)应用程序的跨平台库
随意扩大这个名单
- 一般用途
- 促进
- 洛基
- MiLi品牌
- POCO
- STL (当然)
- STXXL (STL重新实现超大型数据集)
- Qt的
- ASL
- JUCE
- audio
- FMOD
- 综合工具包
- 数据库
- SOCI
- OTL
- LMDB ++
- devise
- IoC框架
- 皮下注射
- PocoCapsule
- 沃拉鲁
- IoC框架
- 文件
- LibreOffice API
- PoDoFo
- 图像
- 快板
- OGRE
- SFML
- GUI
- FLTK
- GTK
- Qt的
- QWT
- wxWidgets的
- VTK
- 哈希
- MurmurHash3
- 成像
- Boost.GIL
- CIMG
- 魔鬼
- EasyBMP
- FreeImage的
- ITK
- OpenCV的
- logging
- Boost.Log
- log4cxx
- Pantheios
- 惩戒
- Google Mock
- 河马嘲笑
- Turtle (用于Boost的C ++模拟对象库)
- 多媒体
- openframework
- 煤渣
- SDL
- 联网
- 高手
- Boost.Asio的
- 冰
- testing
- 如Boost.Test
- Googletesting
- unit testing++
- 文档testing
- 穿线
- Boost.Thread
- 版本控制
- libgit2
- Web应用程序框架
- CppCMS
- 重量
- XML
- libxml2的
- pugixml
- RapidXml
- TinyXML的
- 的Xerces-C ++
链接到开源C ++库的其他列表:
对不起,重复一些已经写好的东西,但是:
- UI: Qt
- 数据库: SOCI
- 通用: Boost , Loki , STLSoft图书馆 , ASL
- 线程: Boost.Thread
- testing: Boost.Test
- 构build工具: Boost.Build , SCons
(至less应该让你开始)
在Windows上…
用于COM开发的ATL用于用户界面的WTL
CGAL是一个优秀的计算几何c ++库
http://loki-lib.sourceforge.net/也可能是很好的补充。;
这是另外一个模板库,它引入了types列表,以及各种devise模式的实现。
我从来没有使用它,但我读了Alexandrescu的书来更好地理解模板。
CppUnit进行unit testing和testing驱动开发
除了已经列出的所有优秀的库之外,我发现xerces for XML(包括XSDvalidation)和xalan for XSLT是有用的(xalanbuild立在xerces之上)。 AFAIK QT或POCO都不具有XSLTfunction(除非自上次使用它们之后才添加)。