四时宝库

程序员的知识宝库

有哪些优秀的 C++ 代码库可以推荐学习?


【私信小编,“资料” 获取更多资料】


开源C ++库的综合列表:

1、通用

  • Boost - 大量通用库
  • Dlib - 网络、线程、图形界面、数据结构、线性代数、机器学习、XML和文本解析、数值优化、贝叶斯网络等(Boost许可证)
  • JUCE - 广泛、成熟、跨平台的C ++工具包(GPL许可证)
  • Folly - Facebook开源库
  • Abseil - 来自Google C ++库代码的开源集合
  • cxxomfort - C ++的Backports功能
  • Ultimate++ - 跨平台的快速应用程序开发框架
  • CAF
  • Better Enums - 具有constexpr支持的反射枚举
  • Smart Enum - “to_string”,“from_string”以及更多内容

2、通讯

  • libnavajo - 轻巧但功能强大的API,包括用于Web和RESTful应用程序开发的http服务器,支持SSL、身份验证、cookie和会话管理,包括Websocket服务器支持
  • C++ RESTful framework - C ++微框架,旨在嵌入到广泛的应用程序中
  • CPR - 现代C ++ HTTP请求库
  • cpp-netlib - C ++网络库
  • cpp-redis - C ++ 11 Lightweight Redis客户端
  • tacopie - C ++ 11 TCP库
  • Boost.Beast - 建立在Boost.Asio之上的HTTP和WebSocket库
  • gsoap - 用于XML数据绑定的C / C ++开发工具包
  • omniORB - C ++中最快,最完整,最便携的CORBA ORB实现
  • Unicomm - 异步网络,高级TCP通信框架
  • zeromq - 快速消息队列
  • libashttp - 异步HTTP客户端库
  • The Silicon C++14 Web Framework - 快速而强大的Web API(MIT)

3、图形用户界面

  • Dear ImGui
  • FLTK
  • nana[doc] - 现代C ++风格的GUI编程
  • OWLNext
  • Switch

GTK+

  • glibmm
  • gtkmm
  • goocanvasmm
  • libglademm
  • libgnomecanvasmm
  • webkitgtk
  • flowcanvas
  • evince

Qt

  • Qt [ src ] [ doc ]
  • qwt5
  • libdbusmenu-QT
  • QuickQanava - 用于在Qt / QML应用程序中绘制有向图的C ++ 14库
  • QuickProperties - 用于QObject / QtObject属性版的C ++ / QML库

4、通用多媒体

  • SFM - 简单快速多媒体库
  • SDL - 通过图形API(通常为OpenGL或Direct3D)跨平台访问音频、键盘、鼠标、操纵杆和图形硬件
  • SIGIL - 用于文本、形状、输入、音频和2D图像的跨平台库
  • Cinder
  • openFrameworks

5、图像

  • cairomm
  • nux
  • pangomm
  • gegl
  • stb
  • Adobe/boost GIL - 高级通用库,专注于对2D图像进行操作的算法
  • GraphicsMagick - 以超过88种格式读取、书写和操作图像。
  • Skia Graphics Engine - Google的核心图形库

绘制

  • plotutils

格式

  • libraw
  • openexr
  • qimageblitz
  • imagemagick
  • djvulibre
  • poppler
  • SVG++

6、音频

  • soundtouch
  • KFR - 快速、现代的DSP架构,DFT / FFT,音频重采样,FIR / IIR滤波器,Biquad
  • Aquila - 跨平台DSP库

7、图像处理

  • OpenCV
  • DLIB
  • ITK
  • OTB

8、视频

  • crystalhd
  • mjpegtools
  • libmatroska
  • libVLC
  • gstreamermm

9、3D图形

  • Vulkan
  • OpenGL
  • bgfx - “自带引擎/框架”样式渲染库
  • Ogre3D
  • Diligent Engine- 一个现代的跨平台低级3D图形库。
  • GLEW - OpenGL函数加载
  • GLAD - 可自定义的轻量级库,用于加载OpenGL函数
  • Visionaray - C ++光线跟踪模板库

10、游戏引擎架构

  • EntityX
  • ANAX
  • EntityPlus
  • EnTT
  • Box2D - 物理引擎

11、数学

线性代数

  • Boost.uBLAS
  • Eigen
  • Armadillo
  • Blitz++
  • IT++
  • Dlib - linear algebra tools
  • Blaze
  • ETL

优化

OptimLib - 用于非线性函数的C ++ 11数值优化方法库。

12、机器学习

  • stats++
  • liblinear
  • Dlib - 机器学习工具
  • MLPACK - 机器学习包
  • Shogun - 大型机器学习工具箱

13、容器

  • Boost.Any
  • Boost.Array
  • Boost.Bimap
  • Boost.Container
  • Boost.Fusion
  • Boost.Heap
  • Boost.Pointer容器
  • Boost.Tuple
  • Boost.Variant

14、数据库

  • OTL
  • DTL
  • libpqxx
  • lmdb ++ - 用于LMDB嵌入式B +树数据库库的C ++ 11包装器。
  • mongocxx - MongoDB的C ++ 11驱动程序库
  • MySQL的++
  • ODB - C ++对象关系映射(ORM)
  • Pgfe - PostGres FrontEnd - PostgreSQL的现代C ++客户端API

15、测试

  • Boost.Test
  • cppunit
  • Google Test
  • Catch2

16、嵌入式/实时

  • QP / C ++ - RTOS内核,双GPL
  • FreeRTOS C ++处理程序 - 处理程序,循环器,状态机,CLI,便携式
  • ETL - 嵌入式模板库 - C ++ 03,为低资源平台量身定制的便携式模板库
  • distortos - 面向对象的C ++ RTOS,用于微控制器
  • μcuREST - 用于微控制器的C ++ 11 REST / JSON服务器框架

练习C++:

  • C++11/14 高速上手教程
  • C++ 实现俄罗斯方块
  • C++ 实现太阳系行星系统
  • C++实现课程管理系统
  • C++ 开发 Web 服务框架
  • C++ 基于 OpenCV 实现实时监控和运动检测记录

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接