摘要:C++是在C语言的基础上开发的一种集面向对象编程、泛型编程和过程化编程于一体的编程语言。应用较为广泛,是一种静态数据类型检查的,支持多重编程的通用程序设计语言。
关于 C++ 框架、库和资源的一些汇总列表,由 fffaraz发起和维护。
内容包括:标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。
标准库
- C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。
- Standard Template Library:标准模板库
- C POSIX library : POSIX系统的C标准库规范
- ISO C++ Standards Committee :C++标准委员会
框架
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.
人工智能
- btsk :游戏行为树启动器工具
- Evolving Objects:基于模板的,ANSI C++演化计算库,能够帮助你非常快速地编写出自己的随机优化算法。
- Neu:C++11框架,编程语言集,用于创建人工智能应用程序的多用途软件系统。
异步事件循环
- Boost.Asio:用于网络和底层I/O编程的跨平台的C++库。
- libev :功能齐全,高性能的时间循环,轻微地仿效libevent,但是不再像libevent一样有局限性,也修复了它的一些bug。
- libevent :事件通知库
- libuv :跨平台异步I/O。
音频
音频,声音,音乐,数字化音乐库
- FMOD :易于使用的跨平台的音频引擎和音频内容的游戏创作工具。
- Maximilian :C++音频和音乐数字信号处理库
- OpenAL :开源音频库—跨平台的音频API
- Opus:一个完全开放的,免版税的,高度通用的音频编解码器
- Speex:免费编解码器,为Opus所废弃
- Tonic: C++易用和高效的音频合成
- Vorbis: Ogg Vorbis是一种完全开放的,非专有的,免版税的通用压缩音频格式。
生态学
生物信息,基因组学和生物技术
- libsequence:用于表示和分析群体遗传学数据的C++库。
- SeqAn:专注于生物数据序列分析的算法和数据结构。
- Vcflib :用于解析和处理VCF文件的C++库
- Wham:直接把联想测试应用到BAM文件的基因结构变异。
压缩
压缩和归档库
- bzip2:一个完全免费,免费专利和高质量的数据压缩
- doboz:能够快速解压缩的压缩库
- PhysicsFS:对各种归档提供抽象访问的库,主要用于视频游戏,设计灵感部分来自于Quake3的文件子系统。
- KArchive:用于创建,读写和操作文件档案(例如zip和 tar)的库,它通过QIODevice的一系列子类,使用gzip格式,提供了透明的压缩和解压缩的数据。
- LZ4 :非常快速的压缩算法
- LZHAM :无损压缩数据库,压缩比率跟LZMA接近,但是解压缩速度却要快得多。
- LZMA :7z格式默认和通用的压缩方法。
- LZMAT :及其快速的实时无损数据压缩库
- miniz:单一的C源文件,紧缩/膨胀压缩库,使用zlib兼容API,ZIP归档读写,PNG写方式。
- Minizip:Zlib最新bug修复,支持PKWARE磁盘跨越,AES加密和IO缓冲。
- Snappy :快速压缩和解压缩
- ZLib :非常紧凑的数据流压缩库
- ZZIPlib:提供ZIP归档的读权限。