💼 收录和整理 500+ 个高质量、开源的 C/C++ 项目,分类清晰、简介简练
🚀 持续更新中 | 涵盖工具库、网络框架、图形引擎、系统组件等多个方向
- 💡 帮助初中高级开发者快速定位优秀的 C/C++ 开源项目
- 🔰 提供真实工程案例助你提升项目经验
- 🔍 分类清晰、持续更新,适合刷项目、做学习笔记、做课程设计、做开源研究
本项目旨在成为一个 长期维护的优质 C/C++ 项目清单,欢迎大家一起参与贡献!
- c/c++ 项目源码学习
- 标准支持库
- 音频
- 视频
- 多媒体
- 通信
- 压缩
- 密码与安全
- 框架
- c/c++ 教程笔记
- c/c++ 精选使用工具库/编程辅助
- 日志
- 参数解析器
- 基准测试
- 并发
- debug
- web开发相关
- 数据格式
- 脚本
- 机器学习与深度学习
- 数据格式化与可视化
- 文档生成工具
- 文档解析工具
- 数据结构与算法
- 数据查询
- 嵌入式
- 数字信号处理
- 数学
- 游戏引擎
- 内存分配
- 网络
- 反射
- 科学计算/高性能计算
- 数据库
- 企业级/工程级组件
- 小游戏
- Android / 虚拟化 / 容器运行相关
- 图形
- 图像处理
- 事件处理机制
- 人工智能
- 开发工具
- 学习网站
| 项目 | 简介 |
|---|---|
| calculator | 计算器应用涵盖基础和高级计算功能,代码现代且结构清晰 |
| HP-Socket | 高性能网络通信框架 |
| hikyuu | 基于 C++/Python 的开源量化交易研究框架 |
| apolloauto | 开源自动驾驶平台 |
| tcpcopy | 分布式图片实时动态压缩 |
| tensorflow | 机器学习系统 |
| seafile | 开源网盘云存储 |
| TinyWebServer | 使用C++11编写的高性能 Web 服务器,适合用作网络编程与多线程并发 |
| libqalculate | 功能非常强大的跨平台 数学计算库 |
| 项目 | 简介 |
|---|---|
| bitflags | 轻松管理一组标志 |
| cpp-typelist | C++20 的现代 typelist |
| expected | C++11/14/17 |
| flux | 一个用于序列化编程的 C++20 库 |
| GSL | 由 Microsoft 开发的 ISO C++指南支持库(GSL) |
| hana | metaprogramming标准库 |
| libunifex | 统一执行器 |
| WIL | 适用于常见 Windows 编程模式的易读型类型安全 C++接口 |
| The GNU C Library | 本手册的目的是告诉您如何使用 GNU C 库的功能 |
| C++ Standard Library | 一组类和函数的集合,这些类和函数是用核心语言编写的,并且是 C++ ISO 标准本身的一部分 |
| 项目 | 简介 |
|---|---|
| miniaudio | 用 C 语言编写的音频播放和捕获库 |
| minimp3 | 极简主义 MP3 解码单头文件库 |
| Amplitude Audio SDK | 一款跨平台音频引擎,专为游戏需求设计 |
| Aubio | 用于音频和音乐分析的库 |
| AudioFile | 一个用于读写音频文件的简单 C++ 库 |
| audioFlux | 一个用于音频与音乐分析、特征提取的 C 语言库 |
| dr_libs | 单文件音频解码库,适用于 C 和 C++ |
| FMOD | 易用的跨平台音频引擎及游戏音频内容创建工具 |
| KFR | 快速、现代的 C++ DSP 框架,支持 FFT、FIR/IIR 滤波器、采样率转换等 |
| LAME | 高质量的 MPEG 音频层 III(MP3)编码器 |
| libsndfile | C 语言库(带 C++ 封装)用于通过标准接口读写采样声音文件 |
| libsoundio | 跨平台实时音频输入输出的 C 语言库 |
| Maximilian | C++ 音频与音乐数字信号处理(DSP)库 |
| OpenAL | 开放音频库,一个跨平台音频 API |
| miniaudio | 单文件音频播放与采集库 |
| ni-media | 用于读写音频文件的 C++ 库 |
| Opus | 完全开放、免版税、用途广泛的音频编解码器 |
| PortAudio | 免费的跨平台开源音频输入输出库 |
| rnnoise | 用于音频降噪的循环神经网络 |
| SELA | 简单的无损音频格式 |
| SoLoud | 简单、可移植的游戏音频引擎 |
| Speex | 免费的语音编解码器,已被 Opus 替代 |
| Tonic | 简洁高效的 C++ 音频合成库 |
| Vorbis | Ogg Vorbis 是一种完全开放、非专利、免版税的通用压缩音频格式 |
| minimp3 | 公有领域、仅头文件实现的 MP3 解码器,采用独立开发实现。 |
| Verovio | 快速轻量的音乐符号排版引擎 |
| Wav2Letter++ | 公有领域的快速开源语音处理工具包,完全用 C++ 编写,并使用 ArrayFire 和 Flashlight 库实现高效计算。 |
| 项目 | 介绍 |
|---|---|
| libvpx | VP8/VP9 编解码器 SDK。 |
| FFmpeg | 一个完整的跨平台解决方案,用于录制、转换和流式传输音频和视频。 |
| avcpp | FFmpeg 的现代 C++ 封装。 |
| libde265 | 开源 h.265 视频编解码器实现。 |
| x265 | 开源 h.265 视频编解码器实现。 |
| OpenH264 | 开源 H.264 编解码器。 |
| Theora | 一种免费、开放的视频压缩格式。 |
| Vireo | Twitter 开发的一个轻量级、多功能的视频处理库。 |
| 项目 | 介绍 |
|---|---|
| GStreamer | 一个用于构建媒体处理组件图的库。 |
| libass | 适用于 ASS/SSA 字幕格式的可移植字幕渲染器。 |
| libav | 一组用于处理音频、视频、字幕和相关元数据等多媒体内容的库和工具。 |
| LIVE555 Streaming Media | 使用开放标准协议 (RTP/RTCP, RTSP, SIP) 的多媒体流媒体库。 |
| libVLC | libVLC (VLC SDK) 媒体框架。 |
| MediaInfoLib | 方便地统一显示视频和音频文件最相关的技术和标签数据。 |
| QtAv | 一个基于 Qt 和 FFmpeg 的多媒体播放框架,可轻松编写播放器。 |
| SDL | 简单直接媒体层。 |
| SFML | 简单快速多媒体库。 |
| TagLib | 一个用于读取和编辑多种流行音频格式元数据的库。 |
| 项目 | 简介 |
|---|---|
| comms_champion | 在 C++11 及以上实现二进制通信协议 |
| 项目 | 简介 |
|---|---|
| Gzip | 一个仅包含头文件的 Gzip C++库 |
| interpolative_coding | 二进制插值编码算法 |
| zstr | 一个 C++的 header-only ZLib 包装器 |
| 项目 | 简介 |
|---|---|
| cppcodec | 编码/解码 base64、base64url、base32 等 |
| digestpp | C++11 头文件消息摘要库 |
| plusaes | 仅包含头文件的 C++ AES 加密库 |
| 项目 | 简介 |
|---|---|
| ANNetGPGPU | 基于 GPU(CUDA)实现的人工神经网络库 |
| btsk | 游戏用行为树入门工具包 |
| Evolving Objects | 一个基于模板的 ANSI-C++ 进化计算库,可帮助你非常快速地编写随机优化算法。 |
| frugally-deep | 一个仅头文件库,用于在 C++ 中使用 Keras 模型 |
| Genann | 用 C 编写的简单神经网络库 |
| MXNet | 轻量、可移植、灵活的分布式/移动端深度学习框架,支持动态、可变的数据流图调度器;支持 Python、R、Julia、Scala、Go、JavaScript 等语言。 |
| PyTorch | 在 Python 中具有强大 GPU 加速的张量和动态图神经网络框架 |
| flashlight | 一个完全用 C++ 编写的快速灵活的机器学习库 |
| Recast/Detour | 三维导航网格生成与路径规划器,主要用于游戏开发 |
| TensorFlow | 一个使用数据流图进行数值计算的开源软件库 |
| Txeo | TensorFlow 的现代 C++ 封装库 |
| oneDNN | 一款用于深度学习应用的跨平台高性能开源库 |
| CNTK | 微软认知工具包(CNTK),一个开源深度学习工具包 |
| tiny-dnn | C++11 实现的头文件式、无依赖的深度学习框架 |
| Veles | 一个分布式平台,用于快速开发深度学习应用 |
| Kaldi | 用于语音识别的工具包 |
| abseil-cpp | Abseil C++ 通用库。 |
| AUI | 适用于 C++20 的声明式 UI 工具包。 |
| Boost | 大量的通用 C++ 库集合。 |
| BDE | 彭博实验室的 BDE 开发环境。 |
| C++ Workflow | C++ 并行计算和异步网络引擎。 |
| CGraph | 一个不依赖任何第三方的基于 C++ 的跨平台 DAG 框架。 |
| Cxxomfort | 一个小型、仅头文件的库,将较新 C++ 标准的各种功能反向移植到 C++03 及更高版本。 |
| Dlib | 一个用于在 C++ 中构建实际机器学习和数据分析应用的工具包。 |
| EASTL | Electronic Arts 标准模板库。 |
| ETL | 嵌入式模板库。 |
| ffead-cpp | 企业应用开发框架。 |
| Folly | Facebook 开发和使用的开源 C++ 库。 |
| FunctionalPlus | 适用于 C++ 的函数式编程库。编写简洁易读的 C++ 代码。 |
| GLib | GLib 为用 C 语言编写的库和应用程序提供核心应用构建模块。 |
| itlib | 一系列类似 std 的单头文件 C++ 库。 |
| Kigs framework | 一个免费开源的 C++ 模块化多用途跨平台 RAD 框架。 |
| libPhenom | libPhenom 是一个事件处理框架,用于在 C 语言中构建高性能和高可伸缩性系统。 |
| LibSourcey | 适用于实时视频流和高性能网络应用的 C++11 事件驱动 I/O。 |
| MiLi | 最小的仅头文件 C++ 库。 |
| OpenFrameworks | 一个用于 C++ 创意编程的跨平台开源工具包。 |
| PhotonLibOS | 一个全面的 C++ 框架,具有高效的用户空间线程(带工作窃取的协程)、I/O、网络、RPC、HTTP 等功能,并在阿里巴巴广泛使用。它兼容 C++ 14/17/20/23、Linux、MacOS、x86-64、ARM64、gcc 和 clang。 |
| Qt | 一个跨平台应用程序和 UI 框架。 |
| Reason | 一个跨平台框架,旨在为需要 C++ 性能和强度的开发人员带来 Java、.Net 或 Python 的易用性。 |
| SaneCppLibraries | 一组适用于 macOS、Windows 和 Linux 的 C++ 平台抽象库。 |
| STLport | 一个 STL 的示例版本。 |
| STXXL | 用于超大数据集的标准模板库。 |
| Ultimate++ | 一个 C++ 跨平台快速应用开发框架。 |
| Windows Template Library | 一个用于开发 Windows 应用程序和 UI 组件的 C++ 库。 |
| 项目 | 简介 |
|---|---|
| CPlusPlusThings | 系统整理现代 C++ 知识点,含并发、设计模式、面试题 |
| Cpp-Primer-Answers | C++ Primer(第五版)习题答案与详解 |
| The-Art-Of-Programming-By-July | 编程之美题解合集,含大量 C/C++ 算法题 |
| cpp_new_features | 简洁整理的 C++11/14/17/20 特性速查笔记 |
| 项目 | 简介 |
|---|---|
| fmt | 快速、安全、现代的 C++ 格式化库,C++20 std::format 的前身 |
| spdlog | 高性能日志库,基于 fmt 实现 |
| log.c | 轻量级 C 日志库,单文件实现 |
| dbg-macro | 强大且美观的 C++ 调试宏工具 |
| libzippp | ZIP 文件读写封装,基于 libzip 的 C++ 包装器 |
| miniz | 单文件压缩库,支持 ZIP、Deflate、zlib 等格式 |
| uthash | 在 C 结构体上实现哈希表的头文件库 |
| inih | 极简 INI 配置文件解析器 |
| cista | 高性能序列化与持久化库 |
| cereal | 现代 C++ 序列化库 |
| nanopb | 面向嵌入式的 Protocol Buffers 实现 |
| SQLiteCpp | SQLite 的 C++ 封装库 |
| sqlite_orm | 纯现代 C++ 实现的 SQLite ORM |
| ctpl | 简洁的线程池实现 |
| zlog | 快速、高可靠的 C 日志库,支持分级和异步 |
| linenoise | 轻量的 readline 替代品,适用于 CLI 应用 |
| indicators | 美观的 CLI 进度条库(C++) |
| 项目 | 介绍 |
|---|---|
| Abseil Logging | Abseil 日志库提供了将日志消息写入 stderr、文件或其他接收器的功能。 |
| Blackhole | 基于属性的日志框架,设计上快速、模块化且高度可定制。 |
| Boost.Log | 设计为高度模块化和可扩展。 |
| BqLog | 一个轻量级、高性能的日志系统,用于《王者荣耀》等项目。 |
| Easylogging++ | 极其轻量级的高性能日志库,适用于 C++11(或更高版本)应用程序。 |
| fmtlog | 一个高性能的 fmtlib 风格日志库,延迟低至纳秒级。 |
| G3log | 带有动态接收器的异步日志记录器。 |
| glog | Google 日志模块的 C++ 实现。 |
| haclog | 一个极其快速的纯 C 日志库。 |
| Log4cpp | 一个 C++ 类库,用于灵活地将日志记录到文件、syslog、IDSA 和其他目的地。 |
| log4cplus | 一个易于使用的 C++ 日志 API,提供线程安全、灵活且任意粒度的日志管理和配置控制。 |
| loguru | 一个轻量级的 C++ 日志库。 |
| lwlog | 非常快的同步和异步 C++17 日志库。 |
| ng-log | 用于应用级日志记录的 C++14 库。 |
| plog | 小于 1000 行代码的便携式简单 C++ 日志库。 |
| reckless | 低延迟、高吞吐量、异步的 C++ 日志库。 |
| spdlog | 超快速、仅头文件的 C++ 日志库。 |
| templog | 一个非常小巧轻量级的 C++ 库,可用于为您的 C++ 应用程序添加日志功能。 |
| 项目 | 简介 |
|---|---|
| args | C++ 命令行参数解析库 |
| CLI11 | 一个用于 C++11 及更高版本的命令行解析器 |
| clipp | 现代 C++强大的表达性参数解析 |
| cxxopts | 轻量级 C++ GNU 风格选项解析库 |
| structopt | 通过定义一个结构体来解析命令行参数 |
| 项目 | 简介 |
|---|---|
| criterion | 现代 C++的微基准测试 |
| nanobench | 适用于 C++11 的简单、快速、精确的微基准测试 |
| picobench | 适用于 C++11 的小型微基准测试库 |
| 项目 | 简介 |
|---|---|
| cs_libguarded | 多线程编程 |
| taskflow | 现代 C++并行任务编程 |
| transwarp | 现代 C++ taskpool |
| transwarp | 一个用于任务并发的头文件 C++库 |
| thread-pool | 现代 C++20 线程池 |
| 项目 | 介绍 |
|---|---|
| backward-cpp | 一个美观的 C++ 堆栈跟踪美化打印库。 |
| Bencher | 一套持续基准测试工具,旨在捕捉 CI 中的性能回归。 |
| benchmark | 谷歌提供的小型微基准测试支持库。 |
| Boost.Test | Boost 测试库。 |
| check | Check 是一个用于 C 语言的单元测试框架。 |
| doctest | 功能丰富但最轻量的 C++ 单头文件测试框架。 |
| Catch2 | 一个现代的、C++ 原生的测试框架,用于单元测试、TDD 和 BDD。 |
| Celero | C++ 基准测试框架。 |
| cpp-dump | 一个用于调试的 C++ 库,可以打印任何变量,甚至是用户自定义类型。 |
| CppUTest | 适用于 C/C++ 的单元测试和 Mocking 框架。 |
| CUTE | 更简单的 C++ 单元测试。 |
| dbg-macro | 一个用于 C++ 的 dbg(...) 宏。 |
| DebugViewPP | 调试日志查看器。 |
| Deleaker | 一个用于资源泄漏检测的工具,包括内存、GDI 和句柄泄漏。 |
| FakeIt | 适用于 C++ 的简单 Mocking 框架。 |
| fff | 一个用于创建虚假 C 函数的微框架。 |
| Google Mock | 一个用于编写和使用 C++ 模拟类的库。 |
| Google Test | 谷歌 C++ 测试框架。 |
| Hippomocks | 单头文件 Mocking 框架。 |
| microprofile | 带有网页视图的多平台性能分析器。 |
| MinUnit | 一个自包含在单个头文件中的 C 语言最小单元测试框架。 |
| nanobench | 适用于 C++11/14/17/20 的简单、快速、精确的单头文件微基准测试功能。 |
| Nanotimer | 一个用于基准测试的简单、低开销、跨平台的计时器类。 |
| Nonius | 一个 C++ 微基准测试框架。 |
| 项目 | 简介 |
|---|---|
| TinyWebServer | 高性能 Web 服务器,C++ 实现,支持 epoll + 多线程 |
| wfrest | 基于 Sogou Workflow 的轻量级 C++ REST 框架 |
| picohttpparser | 极快的 HTTP 解析器,常用于嵌入式服务端 |
| libuv | 跨平台异步 I/O 库,Node.js 的核心依赖 |
| libmill | C 协程风格的并发编程库(Go 风格) |
| picotcp | 嵌入式设备用的轻量 TCP/IP 协议栈 |
| Civetweb | 提供易于使用、功能强大的 C/C++ 嵌入式 Web 服务器,可选支持 CGI、SSL 和 Lua。 |
| C++ REST SDK | 微软的项目,用于使用现代异步 C++ API 设计进行本地代码中的云端客户端-服务器通信。 |
| CppCMS | 一个免费的高性能 Web 开发框架(而非 CMS)。 |
| Crow | Crow 是一个用于运行 Web 服务的 C++ 微框架,其路由方式类似于 Python 的 Flask。 |
| Cutelyst | 一个基于 Qt 构建的 C++ Web 框架,采用 Catalyst (Perl) 框架的简单方法。 |
| Drogon | 一个基于 C++17/20 的高性能 HTTP 应用框架。 |
| C++ wfrest | C++ Web 框架 REST API。 |
| facil.io | 一个事件驱动的高性能 C Web 框架,支持 HTTP、WebSockets、SSE 等。 |
| Kore | 用 C 语言开发的超快速灵活的 Web 服务器/Web 应用程序框架。 |
| libOnion | 一个轻量级库,可帮助你用 C 编程语言创建 Web 服务器。 |
| lwan | 实验性、可扩展、高性能的 HTTP 服务器。 |
| oat++ | 一个轻量级、零依赖的框架,用于创建高性能 Web 服务。 |
| Pistache | Pistache 是一个用纯 C++11 编写的 C++ REST 框架,没有外部依赖。 |
| QDjango | 一个用 C++ 编写并基于 Qt 库构建的 Web 框架。它尽可能地遵循 Django 的 API,因此得名。 |
| TreeFrog Framework | 一个基于 C++ 和 Qt 的高速全栈 Web 应用框架,支持 HTTP 和 WebSocket 协议(带有 O/R 映射)。 |
| userver | 一个异步 C++17 框架,包含丰富的抽象和数据库驱动程序,用于快速、舒适地创建高效的微服务、服务和实用程序。 |
| Wt | 一个用于开发 Web 应用程序的 C++ 库。 |
| 项目 | 简介 |
|---|---|
| Boost.JSON | JSON 解析、序列化、检查和修改 |
| cpptoml | 用于解析 TOML 的头文件库 |
| csv2 | 现代 C++的快速 CSV 解析器和写入器 |
| cJSON | 超轻量的 C JSON 解析库 |
| Fast C++ CSV Parser | 用于读取 CSV 文件的快速库 |
| nlohmann/json | 现代 C++的 JSON |
| picojson | 一个仅使用头文件的 C++ JSON 解析器序列化器 |
| 项目 | 介绍 |
|---|---|
| AngelScript | AngelScript 是一种面向游戏的解释/编译型脚本语言。 |
| Boost.Python | 一个 C++ 库,可实现 C++ 和 Python 编程语言之间的无缝互操作。 |
| cppimport | 直接从 Python 导入 C++ 文件! |
| CppSharp | 将 C/C++ API 粘合到高级语言的工具和库。 |
| ChaiScript | 一种易于使用的 C++ 嵌入式脚本语言。 |
| ctypes.sh | 用于 Bash 的外部函数接口。 |
| Cython | Cython 是一个优化静态编译器,适用于 Python 编程语言和扩展的 Cython 编程语言(基于 Pyrex)。它使为 Python 编写 C 扩展变得像 Python 本身一样容易。 |
| djinni | 一个用于生成跨语言类型声明和接口绑定的工具。 |
| Duktape | 一款占用空间小的可嵌入 JavaScript 引擎。 |
| JavaCpp | 连接 Java 和原生 C++ 的缺失桥梁。 |
| MiniScript | 一种现代、优雅、易于学习且易于嵌入到您自己的 C# 或 C++ 项目中的脚本语言。 |
| nanobind | 微小且高效的 C++/Python 绑定。 |
| nbind | 神奇的头文件,让您的 C++ 库可以从 JavaScript 访问。 |
| PHP-CPP | 一个用 C++ 构建 PHP 扩展的库。 |
| pocketpy | 适用于游戏脚本的 C++17 仅头文件 Python 解释器。 |
| pybind11 | C++11 和 Python 之间的无缝互操作。 |
| QuickJS | 一个小巧且可嵌入的 JavaScript 引擎。 |
| SIP | 用于 Python v2 和 v3 的 C 或 C++ 绑定生成器。 |
| sol2 | 一个带有高级功能和顶级性能的 C++ <-> Lua API 包装器。 |
| SWIG | 一个包装/接口生成器,可让您的 C++ 代码链接到 JavaScript、Perl、PHP、Python、Tcl 和 Ruby。 |
| txiki.js | 一个微小的 JavaScript 运行时。 |
| V7 | 一个嵌入式 JavaScript 引擎。 |
| V8 | 谷歌开发的一款快速 JavaScript 引擎,可以嵌入到任何 C++ 应用程序中。 |
| 项目 | 简介 |
|---|---|
| dlib | 一个用于实际机器学习和数据分析的工具包 |
| frugally-deep | 在 C++ 中使用 Keras 模型 |
| gaenari | C++17 中的增量决策树 |
| hnswlib | 快速近似最近邻 |
| MiniDNN | 一个用于深度神经网络的纯头文件 C++ 库 |
| mlpack | 一个快速、纯头文件的 C++ 机器学习库 |
| nanoflann | 使用 KD 树进行最近邻(NN)搜索 |
| tiny-dnn | C++14 中的无依赖深度学习框架 |
| ceras | 一个用 C++20 编写的深度学习引擎 |
| 项目 | 简介 |
|---|---|
| asap | 用于创建、展示、迭代和操作日期的库。 |
| cxx prettyprint | 用于在 C++(0x)中对任意容器进行美观打印的工具。 |
| emio | 一个安全且快速的 C++20 字符输入/输出库,支持高层和低层操作。 |
| fmt | 一个现代化的格式化库。 |
| pprint | 用于现代 C++ 的漂亮打印器。 |
| strf | 一个为 C++14 设计的快速格式化库。 |
| tabulate | 用于现代 C++ 的表格生成工具。 |
| backward-cpp | 一个漂亮的 C++堆栈跟踪美化打印程序 |
| gplot++ | 跨平台、仅头文件的 C++ 绘图库,接口兼容 Gnuplot |
| matplotplusplus | 用于数据可视化的 C++ 图形库。 |
| morphologica | 基于现代 OpenGL 的 C++ 仅头文件图形与数据可视化工具 |
| 项目 | 简介 |
|---|---|
| Doxide | 面向现代 C++ 的现代文档生成工具,使用 YAML 进行配置,输出为 Markdown 格式 |
| doxygen | C++ 注释文档生成的事实标准工具。可根据带注释的源代码生成文档 |
| hdoc | 面向 C++ 的现代文档生成工具 |
| Natural Docs | 一个开源文档生成器,支持多种编程语言 |
| Sphinx | 一个能够轻松创建智能而美观文档的工具 |
| 项目 | 介绍 |
|---|---|
| DuckX | 用于创建和修改 Microsoft Word (.docx) 文件的 C++ 库。 |
| FreeXL | 一个开源库,用于从电子表格中提取有效数据。 |
| libxls | 从 C/C++ 读取二进制 Excel 文件。 |
| libxlsxwriter | 一个用于创建 Excel XLSX 文件的 C 库。 |
| OpenXLSX | 一个用于读取、写入、创建和修改 Microsoft Excel® (.xlsx) 文件的 C++ 库。 |
| SimpleXlsxWriter | 适用于 Microsoft Excel 2007 及更高版本的 XLSX 文件写入器。 |
| XLSX I/O | 用于读取和写入 .xlsx 文件的 C 库。 |
| 项目 | 简介 |
|---|---|
| BitMagic | 压缩位向量、逻辑操作、内存紧凑的容器 |
| concurrent queue | 多生产者、多消费者的无锁并发队列 |
| dynamic bitset | C++17 的仅头文件动态位集。 |
| frozen | 针对 C++14 用户的 gperf 的 constexpr 替代方案。 |
| hopscotch map | 使用跳跃哈希实现的快速哈希表和哈希集合 |
| immer | 后现代不可变和持久化的数据结构 |
| MPMCQueue | 支持有界多生产者多消费者的并发队列 |
| outcome | 轻量级的结果与异常处理容器 |
| parallel hashmap | 内存友好且速度极快的哈希表与 B 树容器 |
| PGM-index | 使用远低于其他容器的内存,在十亿级数据项中进行快速查询与更新。 |
| robin-hood hashing | 基于罗宾汉哈希的高效内存哈希表 |
| robin-map | 使用罗宾汉哈希的快速哈希表与哈希集合 |
| sfl-library | 小向量、小容量平坦映射/集合/多集合(有序或无序)的 C++11 实现。 |
| small | 针对小型 STL 容器优化的主要容器实现 |
| tries | 快速且高度可自定义的 C++20 前缀树实现 |
| 项目 | 简介 |
|---|---|
| boolinq | 最简单的 C++ 头文件 LINQ 模板库 |
| 项目 | 简介 |
|---|---|
| Apache NuttX | 一个兼容 POSIX 的实时微内核操作系统,支持 ARM、RISC‑V 等多个架构,适合嵌入式系统开发与学习 |
| Zephyr | 主流开源嵌入式系统与工具链 |
| FreeRTOS | 主流开源嵌入式系统与工具链 |
| acados | 面向嵌入式场景的开源最优控制库,底层使用 BLASFEO 高性能线性代数,加速控制算法部署 |
| stm32f103c8t6-examples | 用 C 编写的 STM32F103 系列裸机程序 |
| libopencm3 | STM32 等 Cortex-M 芯片的通用外设寄存器访问库 |
| FreeRTOS-Kernel | 轻量级实时操作系统内核 |
| pico-examples | Raspberry Pi Pico (RP2040) 官方示例 |
| libusb | 用户态 USB 通信库 |
| tinyusb | 嵌入式 USB 栈 |
| 项目 | 简介 |
|---|---|
| DSPFilters | 一组用于数字信号处理的实用 C++ 类库 |
| FFTW | 用于计算一维或多维离散傅里叶变换(DFT)的 C 语言库 |
| iir1 | 实时 IIR 滤波器的 C++ 库 |
| kissfft | 一个“保持简单”的快速傅里叶变换(FFT)库 |
| pocketfft | 基于 FFTPack 的 FFT 实现,具备多个改进 |
| 项目 | 介绍 |
|---|---|
| Eigen | 一个用于线性代数、矩阵和向量运算、数值求解器及相关算法的高级 C++ 模板头文件库。 |
| ExprTk | C++ 数学表达式工具包库 (ExprTk) 是一个易于使用、易于集成且极其高效的运行时数学表达式解析器和评估引擎。 |
| Geometric Tools | 用于在数学、图形、图像分析和物理领域进行计算的 C++ 库。 |
| GLM | 仅头文件的 C++ 数学库,与 OpenGL 的 GLSL 数学库匹配并可互操作。 |
| GMTL | 图形数学模板库是一个以通用方式实现图形基本元素的工具集合。 |
| GMP | 一个用于任意精度算术的 C 库,可对有符号整数、有理数和浮点数进行操作。 |
| Klein | 一个快速、SIMD 优化的 C++17 几何代数库,用于点、线和平面的投影、交点、连接、刚体运动等。 |
| linalg.h | 适用于 C++ 的单个头文件、公共领域、短向量数学库。 |
| MATIO | MATLAB MAT 文件 I/O 库。 |
| MatX | 一个 GPU 加速的 C++17 数值计算库,具有 MATLAB/Python 风格的语法。 |
| MIRACL | 一个多精度整数和有理数算术加密库。 |
| NumCpp | Python Numpy 库的模板化仅头文件 C++ 实现。 |
| muparser | muParser 是一个用 C++ 编写的可扩展高性能数学表达式解析器库。 |
| LibTomMath | 一个完全用 C 编写的免费开源便携式数论多精度整数库。 |
| linmath.h | 一个精简的线性数学库,面向图形编程。 |
| lp_solve | 一个用于制定和解决线性规划问题的库。 |
| OpenBLAS | 一个基于 GotoBLAS2 1.13 BSD 版本的优化 BLAS 库。 |
| PCG-rand | PCG 是一系列简单、快速、节省空间、统计学上优秀的随机数生成算法。与许多通用 RNG 不同,它们也很难预测。 |
| QuantLib | 一个免费/开源的量化金融库。 |
| SimSIMD | 适用于 x86 AVX2、AVX-512、Arm NEON 和 SVE 的矢量距离函数。 |
| StatsLib | 一个 C++ 仅头文件的统计分布函数库。 |
| SymEngine | 快速符号操作库,SymPy 核心的 C++ 重写。 |
| TinyExpr | 一个用于从字符串解析和评估数学表达式的 C 库。 |
| 项目 | 简介 |
|---|---|
| ezEngine | 开源 C++ 游戏引擎,支持 Windows/Linux/Android |
| irrlicht | 轻量级跨平台 3D 引擎,适合视觉渲染和游戏初学者 |
| OGRE | 大型渲染架构,广泛用于模拟与游戏 |
| orx | 面向 2D 游戏的轻量级插件驱动引擎,支持多平台 |
| limitless-engine | 使用 C++17 和现代 OpenGL 构建的渲染引擎,聚焦高性能和低延迟 |
| Wicked Engine | 现代 OpenGL/Vulkan 引擎,带编辑器和脚本系统,可用于学习使用 |
| Diligent Engine | 跨平台渲染框架,封装 DirectX12/Vulkan/Metal 等主流 API,适合 3D 可视化类项目 |
| Acid | 一个高速的 C++17 Vulkan 游戏引擎 |
| Allegro | 一个跨平台库,主要用于视频游戏和多媒体编程 |
| Axmol Engine | 一个跨平台的桌面、移动和 XBOX(UWP)游戏引擎,源自 Cocos2d-x-4.0 |
| Cocos2d-x | 一个用纯 C、SDL 和 OpenGL 编写的游戏引擎 |
| crown | 开源 C++ 游戏引擎,支持 Windows/Linux/Android |
| Corange | Crown 是一个通用数据驱动游戏引擎,用正统 C++从头编写,具有极简主义和数据导向的设计理念 |
| delta3d | 一个强大的模拟平台 |
| GamePlay | 一个跨平台的原生 C++游戏框架,用于创建 2D/3D 移动和桌面游戏 |
| Grit | 一个社区项目,旨在构建一个免费的 3D 开放世界游戏引擎 |
| Halley | 一个用 C++14 编写的轻量级游戏引擎,具有"真正"的实体-组件系统 |
| Hazel Game Engine | Hazel 主要是一个用于 Windows 的早期阶段交互式应用程序和渲染引擎 |
| Boden | 原生、移动、跨平台 GUI 框架 |
| CEGUI | 灵活的跨平台 GUI 库 |
| Elements | 轻量级、细粒度、分辨率无关、模块化 GUI 库 |
| GacUI | GPU 加速的 C++用户界面,具有所见即所得开发工具、XML 支持、内置数据绑定和 MVVM 功能 |
| 项目 | 介绍 |
|---|---|
| Boehm GC | 适用于 C 和 C++ 的保守垃圾回收器。 |
| C Smart Pointers | 适用于 (GNU) C 编程语言的智能指针。 |
| Hoard | 适用于 Linux、Windows 和 Mac 的快速、可扩展且内存高效的 Malloc 实现。 |
| jemalloc | 通用 malloc(3) 实现,强调避免碎片和可伸缩的并发支持。 |
| memory | 兼容 STL 的 C++ 内存分配器库。 |
| memory-allocators | 自定义内存分配器,用于提高动态内存分配的性能。 |
| mimalloc | 一个紧凑、高性能的通用分配器。 |
| rpmalloc | 用 C 语言实现的跨平台无锁线程缓存 16 字节对齐内存分配器。 |
| snmalloc | 基于消息传递的高性能分配器。 |
| TCMalloc | Google 的快速、多线程 malloc 实现。 |
| buddy_alloc | 一个 C 语言的单个头文件伙伴内存分配器,具有有限的分配成本。 |
| tgc | 一个用约 500 行 C 代码编写的微型垃圾回收器。 |
| 项目 | 介绍 |
|---|---|
| ada | 符合 WHATWG 标准且快速的现代 C++ URL 解析器。 |
| ACE | 一个 C++ 面向对象网络编程工具包。 |
| Boost.Asio | 一个用于网络和低级别 I/O 编程的跨平台 C++ 库。 |
| Boost.Beast | 基于 Boost.Asio 在 C++11 中构建的 HTTP 和 WebSocket 库。 |
| Breep | 基于事件的高级 C++14 点对点库。 |
| C++ REST SDK | C++ REST SDK(以前名为 Casablanca)。 |
| Restbed | C++11 异步 RESTful 框架。 |
| Restinio | 一个仅头文件的 C++14 库,提供嵌入式 HTTP/Websocket 服务器功能。 |
| c-ares | 一个用于异步 DNS 请求的 C 库。 |
| ENet | 可靠的 UDP 网络库。 |
| evpp | 支持 TCP/UDP/HTTP 协议的 C++ 高性能网络库。 |
| FTP client for C++ | 用于发起 FTP 请求的 C++ 客户端。 |
| H2O | 一个优化的 HTTP 服务器,支持 HTTP/1.x 和 HTTP/2。也可作为库使用。 |
| HTTP Parser | 一个 C 语言的 HTTP 请求/响应解析器。 |
| KCP | 一个快速可靠的 ARQ 协议,有助于应用程序降低网络延迟。 |
| libcurl | 多协议文件传输库。 |
| libhttpserver | 用于创建嵌入式 Rest HTTP 服务器(及更多)的 C++ 库。 |
| Libmicrohttpd | GNU libmicrohttpd 是一个小型 C 库,旨在方便地在另一个应用程序中运行 HTTP 服务器。 |
| RedPanda | 面向开发者的流数据平台,兼容 Kafka API,速度提升 10 倍 |
| RakNet | 一个跨平台、开源的 C++ 网络引擎,专为游戏程序员设计 |
| restclient-cpp | 简单易用的 C++ REST 客户端,封装了 libcurl 进行 HTTP 请求 |
| Seasocks | 简单、小巧的 C++ 嵌入式 Web 服务器,支持 WebSockets |
| tlse | 单个 C 文件实现的 TLS 1.2/1.3,使用 tomcrypt 作为加密库 |
| TQUIC | 一个高性能、轻量级、跨平台的 QUIC 库,提供 C 和 C++ 接口 |
| Tufão | 一个基于 Qt 构建的异步 C++ Web 框架 |
| uriparser | 严格符合 RFC 3986 的 URI 解析和处理库 |
| uWebSockets | µWS 是最轻量、高效且可扩展的 WebSocket 和 HTTP 服务器实现之一 |
| UCall | 基于 io_uring 的高性能 SIMD 加速 RPC 库 |
| WAFer | 一个基于 C 语言的超轻量级软件平台,适用于可扩展的服务器端和网络应用程序。可将其视为 C 程序员的 node.js |
| 项目 | 介绍 |
|---|---|
| config-loader | 一个 C++17 静态反射框架,用于将配置文件解析为原生数据结构。 |
| Better Enums | 反射枚举(转换为字符串,迭代)。单头文件。 |
| clReflect | 使用 clang 实现的 C++ 反射。 |
| CPFG | 一个用于反射、回调和脚本绑定的 C++03 库。 |
| CPP-Reflection | 使用 clang 实现的 C++ 反射。 |
| Easy Reflection | 像 Rust、Java 或 Go 中一样简单快速的反射 + 序列化解决方案。 |
| Magic Enum | 仅头文件的 C++17 库,为枚举提供静态反射(转换为字符串、从字符串转换、迭代),无需任何宏或样板代码即可与任何枚举类型配合使用。 |
| magic_get | 用户自定义类型(无需任何宏或样板代码)的 std::tuple 类似方法。 |
| meta | C++ 中仅头文件、非侵入式且无宏的运行时反射系统。 |
| Nameof | 仅头文件的 C++17 库,提供 nameof 宏和函数以获取变量、类型、函数、宏和枚举的简单名称。 |
| Ponder | 一个用于反射的 C++11 库。 |
| REFLECT | C++20 静态反射库。 |
| reflect-cpp | 通过反射实现序列化,包括从结构体自动检索字段名称。 |
| RTTR | 一个用于反射的 C++11 库。 |
| simple_enum | 一个快速、直观且类型安全的 C++ 枚举支持库。 |
| TSMP | 一个非侵入式、无宏的 C++20 静态反射库。它使用 libclang 从源代码中提取反射数据,并通过模板特化使其可用。 |
| visit_struct | 一个用于 C++ 中结构体字段反射的微型库。 |
| Refureku | 一个 C++17 运行时反射和代码生成库。 |
| 项目 | 简介 |
|---|---|
| Armadillo | 高性能线性代数与科学计算库,适用于数值运算与 ML 应用 |
| fftw | 一个用于计算一维或多维 DFT 的 C 库 |
| GSL | GNU 科学库 |
| precice | 用于分区多物理场模拟的耦合库 |
| MPL | 一个基于消息传递接口标准的 C++11 消息传递库 |
| 项目 | 简介 |
|---|---|
| rocksdb | Facebook 出品的高性能嵌入式键值数据库 |
| sqlite_orm | SQLite 的现代 C++ ORM 封装 |
| SQLiteCpp | SQLite 的 C++ 封装库 |
| OTL | Oracle、ODBC 和 DB2-CLI 模板库 |
| ClickHouse | ClickHouse 数据库的 C++ 客户端。 |
| CrossDB | 超高性能轻量级嵌入式与服务器端 OLTP 关系型数据库管理系统 |
| DuckDB | 嵌入式 SQL OLAP 数据库管理系统,专为分析型查询设计。 |
| hiberlite | SQLite3 的 C++ 对象关系映射(ORM)库。 |
| Hiredis | Redis 数据库的极简 C 客户端库。 |
| Infinity | 面向大语言模型应用的 AI 原生数据库,支持超快向量与全文检索 |
| Kuzu | 可嵌入的属性图数据库,支持高性能查询与扩展性,实现了 Cypher 语言。 |
| Kvrocks | 使用 RocksDB 作为存储引擎,兼容 Redis 协议的分布式键值数据库 |
| LevelDB | Google 开发的快速键值存储库,提供从字符串键到字符串值的有序映射。 |
| libpg_query | 用于在服务器外部访问 PostgreSQL 解析器的 C 库。 |
| LMDB | Lightning Memory-Mapped Database,快速嵌入式键值数据库,使用 B+ 树结构。 |
| MapLite | 基于 C++17 的轻量型数据库管理系统(DBMS),使用 mmap 进行零拷贝持久化。 |
| Monarch | 支持可插拔存储引擎的嵌入式 KV 存储系统,API 简洁,目标与 RocksDB 类似。 |
| nanoDB | 单文件实现的小型 C 语言数据库,采用文本与二进制混合存储 |
| Pelikan | Twitter 开发的模块化、高性能缓存框架,支持多种协议(memcached、redis 等)。 |
| PostgreSQL | 世界领先的企业级开源关系型数据库系统,支持 SQL 标准与扩展特性 |
| QuickDB | 简单的文件键值存储解决方案,使用 JSON 持久化,无需依赖 |
| RocksDB | Facebook 基于 LevelDB 构建的高性能持久化 KV 数据库,支持压缩与并发 |
| SimDB | 高性能、共享内存、无锁、跨平台、单文件、最小依赖、C++11 键值存储 |
| SkyTable | 通用 NoSQL 数据库,支持强一致性与内存索引优化,支持多种数据结构 |
| sled | 嵌入式数据库,具有锁自由并发支持、崩溃恢复与写前日志机制,Rust 开发但提供 C FFI 接口。 |
| sqlite | 世界上最流行的轻量级嵌入式 SQL 数据库,广泛应用于移动端和嵌入式系统。 |
| TinyORM | 现代 C++ ORM 库 |
| UnQLite | 一个独立的、无服务器的、零配置的、事务性的 NoSQL 引擎 |
| Tkrzw | Google Tokyo Cabinet 与 Kyoto Cabinet 的继承者,高性能键值存储,支持多种数据结构。 |
| Unqlite | 嵌入式 NoSQL 数据库引擎,支持键值存储与 JSON 文档模型,设计类 SQLite。 |
| Valkey | Redis 社区分支,继承 Redis 7.x 代码并持续优化维护,性能稳定。 |
| Velociraptor | 针对终端取证与安全监控的开源平台,核心存储引擎为可插拔嵌入式数据库。 |
| WiredTiger | MongoDB 默认存储引擎,支持并发、事务、压缩等高级特性 |
| YouDB | 手写 KV 存储引擎项目,设计类 LevelDB,适合学习数据库引擎开发过程。 |
| 项目 | 简介 |
|---|---|
| folly | Facebook 推出的 C++ 核心组件库 |
| workflow | 搜狗高性能异步框架,支持 HTTP、RPC 等 |
| srpc | 基于 workflow 的高性能 RPC 框架 |
| chromium | Chrome 浏览器核心,C++ 大型项目学习典范 |
| winmerge | Windows 平台的文件差异比较工具 |
| nvui | Neovim 的图形界面(Qt + C++) |
| hplayer | 高性能 HLS 视频播放器,支持本地解码 |
| 项目 | 简介 |
|---|---|
| TinyTetris | 纯 C 语言实现的经典俄罗斯方块游戏,控制台界面 |
| sudoku | 控制台数独小游戏,C++ 实现 |
| GoBangByCpp | C++ 实现双人对战五子棋项目。 |
| mazecode | 自动走迷宫:慕课网 C++ 课程封装篇作业,自动走迷宫。 |
| C-LanguageProjectCombat | 俄罗斯方块:用 C 语言实现 Win32 程序,完成俄罗斯方块游戏程序。 |
| C-LanguageProjectCombat | 学生管理系统。 |
| AirPlaneGame | cocos2dx 制作的微信《飞机大战》游戏。 |
| Tank3000 | 坦克大战。 |
| Big_fight | 球球大作战。 |
| Gobang | 智能人机五子棋对战:一款 AI 五子棋项目,C++ 新手项目实践 — 智能人机五子棋对战。 |
| sanguosha | 此项目为三国杀游戏,模拟 QQ 注册,QQ 登录,QQ 加好友,QQ 聊天,基于 C# 语言,SQL Server 数据库开发,游戏功能目前已经实现玩家 VS 人机,已支持英雄:刘备、曹操、孙权,支持穿着装备、武器、战马,杀死对方获得积分。 |
| SimpleNES | 任天堂红白机模拟器:这是一个用 C++ 编写的 NES 仿真器。 |
| Snake-cpp | 用 C++ 写的一个简易贪吃蛇。 |
| MagicTower | 魔塔:当年很火的一个 Flash 游戏,作者当时正在学习 C++ (VC++6.0),故移植了过去,纯学习练手。 |
| DiningSystem | 点餐系统。 |
| Plants-vs.-Zombies-Online-Battle | 植物大战僵尸多人对战,开发通过反向工程,内嵌钩子和动态链接库注入。两个在线玩家分别作为植物和僵尸进行防御和攻击。 |
| PictureMatching | Qt C++ 实现的王者荣耀风格的连连看程序(基于 TD-framework 实现)。 |
| ST_PUZZLE_2.0 | ST-PUZZLE。 |
| mines_sweeper | 开源项目:扫雷(Qt 开发)。 |
| 2048.cpp | 功能齐全的终端版游戏《2048》用 C++ 编写。 |
| Ancient-Spider | 蜘蛛纸牌游戏。 |
| Qt_FreeCell | Qt_FreeCell (纸牌游戏空当接龙 C++/Qt 实现)。 |
| CppFishingCode | 纯 C++ 捕鱼游戏。 |
| Rhythm | 用 Cocos2d-x 开发跨平台游戏,高仿《节奏大师》游戏。 |
| mirror | 传奇挂机类游戏。 |
| 3d-racing-games-demo | 使用 C++ 和 OpenGL 实现简单的 3D 赛车游戏。 |
| Contra | 使用图形库 easyx 写的 C++ 魂斗罗游戏。 |
| Maze | 基于 C++ EasyX 编写的益智小游戏 - 迷宫。 |
| shushabgyuanyue/c | N 个小游戏项目(适合初学者)。 |
| game_2048 | 在实验楼学习的 C 语言项目,2048 小游戏。 |
| JumpByJump | C++ 版微信跳一跳小游戏辅助程序。 |
| ChineseChesses | 双人象棋小游戏 - C++ - Windows GDI。 |
| Word-Games | C++ 实现带 GUI 背单词小游戏。 |
| NumberGuess | 基于 C++ 的猜数字小游戏。 |
| Puzzle | C/C++ 拼图小游戏。 |
| loliRun | 萝莉酷跑小游戏。 |
| Study-of-C- | 学堂在线 C++ of Linux 的小项目,使用随机数库编写的简单控制台游戏(猜数游戏)。 |
| jijinlong/colors | 一款实用 Lua+C++ 的消除类小游戏。 |
| Cgames | C 语言经典 200 多个有趣的程序和游戏。 |
| Shoot-The-Chicken-3D | 基于 C++ 控制台的 3D 第一人称射击 (FPS) 游戏,项目包含软件渲染器、游戏引擎层、游戏逻辑层。 |
| bounce-ball | 弹弹乐 - C 语言控制台游戏。 |
| shining-yang/DDZ | DDZ(斗地主)- Win32 C/C++ 编写的斗地主游戏程序。 |
| sudoku | C++ 实现的跨平台数独游戏,命令行操作易上手,可以在开发间隙用来放松身心。数百行代码,初学者也可以轻松掌握。 |
| 2019-2020-tjse-sour-knight | 2019-2020 同济软工大项目 C++ 游戏。 |
| LianZhu | 海底连珠,基于 Cocos2d-x-3.3 游戏引擎,C++ 版本的一个五子连珠消除类游戏,可以学习基本的 Cocos2d-x 游戏开发,用到 A*(A star) 寻路算法,消除算法。 |
| historyme/fmj_cpp | 步步高伏魔记游戏 C++ 版本。 |
| SimpleNES | 一个用 C++ 编写的 NES 模拟器,只是为了好玩。包含游戏:超级马里奥兄弟、Contra、冒险岛、忍者外传、洛克人和洛克人 2、马里奥兄弟、大金刚和小金刚、战城、报童、塞尔达传说、吃豆子、网球、励志单车。 |
| CPP-DrawGuess | 一个 C++ 编写的,使用 C/S 架构的、实时、可选房间、多人同房的你画我猜游戏。 |
| CoinFlap | C++ 金币翻转游戏。 |
| richman | C++ 写的大富翁游戏,适合入门初学者。 |
| CubeMiniGame | Cube Engine 是一个用 C++ 编写的小型图形引擎,由 OpenGL 和 Vulkan 提供支持,开发它是为了提高我的 CG 知识和通用编程技能(通用算法、代码风格、设计模式)。 |
| ArenaofValor | 同济大学软件学院 18 级 C++ 大项目——王者荣耀。 |
| 项目 | 简介 |
|---|---|
| Anbox | 基于容器技术让 Android 原生运行在 Linux 上 |
| Waydroid | Anbox 的活跃替代品,支持完整 Android UI,性能更好 |
| Genymotion Emulator (scrcpy) | scrcpy 是 Genymotion 团队开发的高性能安卓投屏工具(C 实现) |
| SPURV | Collabora 开发的 Android on Linux 容器运行方案,主打 Wayland 桌面支持 |
| Box64 / Box86 | 在 ARM 设备上运行 x86 Linux 程序(用 C 写的高性能模拟器) |
| QEMU | 世界最著名的虚拟化模拟器,支持多种架构,底层大量 C 实现 |
| Proot | 用于 Linux 用户空间虚拟化的轻量工具,无需 root 权限 |
| MyTinySTL | 简易版 STL 容器库实现,适合 STL 源码学习 |
| inversify-cpp | C++17 控制反转和依赖注入容器库 |
| 项目 | 介绍 |
|---|---|
| assimp | Open Asset Import Library 是一个跨平台的 3D 模型导入库,旨在为不同的 3D 资产文件格式提供一个通用的 API。 |
| bgfx | 一个跨平台的渲染库。 |
| Blend2D | 由 JIT 编译器驱动的 2D 矢量图形引擎。 |
| Cairo | 一个支持多种输出设备的 2D 图形库。 |
| C-Turtle | 一个 C++11 仅头文件的海龟图形库,作为 CImg 的封装。 |
| Diligent Engine | 一个现代化的跨平台低级 3D 图形库。 |
| DirectXTK | 一个用于在 C++ 中编写 DirectX 11.x 代码的辅助类集合。 |
| GLFW | 一个简单、跨平台的 OpenGL 协调库。 |
| GLFWPP | 一个适用于 GLFW 的轻量级现代 C++17 仅头文件封装。 |
| Harfang 3D | 可用于 C++、Python、Lua 和 Go 的 3D 可视化库。基于 BGFX。 |
| herebedragons | 一个使用各种引擎、框架或 API 实现的基本 3D 场景。 |
| Horde3D | 一个小型 3D 渲染和动画引擎。 |
| Ion | 一组小型高效的库,用于构建使用 3D 图形的跨平台客户端或服务器应用程序。 |
| Irrlicht | 一个用 C++ 编写的高性能实时 3D 引擎。 |
| libigl | 简单的 C++ 几何处理库。 |
| LLGL | Low Level Graphics Library 是现代图形 API 的一个轻量级抽象层。 |
| LunaSVG | 一个独立的 C++ SVG 渲染库。 |
| magnum | 轻量级模块化的 C++11/C++14 图形中间件,适用于游戏和数据可视化。 |
| micro-gl | 实时、可嵌入、仅头文件的 C++11 CPU 矢量图形库。无需标准库、无需 FPU 和无需 GPU。 |
| NanoVG | 基于 OpenGL 的抗锯齿 2D 矢量绘图库,用于 UI 和可视化。 |
| Ogre 3D | 一个面向场景、实时、灵活的 3D 渲染引擎(而非游戏引擎),用 C++ 编写。 |
| 项目 | 介绍 |
|---|---|
| GDCM | Grassroots DICOM 库。 |
| ITK | 一个用于图像分析的开源、跨平台系统。 |
| Jpegli | 一个改进的 JPEG 编码器和解码器实现。 |
| Leptonica | Leptonica 是一个开源库,包含广泛用于图像处理和图像分析应用的软件。 |
| libavif | 用于编码和解码 .avif 文件的库。 |
| libfacedetection | 用于图像人脸检测的开源库。人脸检测速度可达 1500FPS。 |
| libjpeg-turbo | 一个 JPEG 图像编解码器,使用 SIMD 指令加速基线 JPEG 编码和解码。 |
| libjxl | JPEG XL 图像格式参考实现。 |
| libpng | 用于读取、创建和操作 PNG(便携式网络图形)栅格图像文件的应用程序的参考库。 |
| libspng | 简单、现代的 libpng 替代方案。 |
| libvips | 一个内存需求低、速度快的图像处理库。 |
| LodePNG | C 和 C++ 中的 PNG 编码器和解码器。 |
| Magick++ | ImageMagick 用于 C++ 的程序接口。 |
| MagickWnd | ImageMagick 用于 C 的程序接口。 |
| MozJPEG | 改进的 JPEG 编码器。 |
| 项目 | 简介 |
|---|---|
| eventbus | C++中介者模式事件总线 |
| eventpp | C++事件分发器和回调列表 |
| periodic-function | 指定时间间隔的回调 |
| 项目 | 介绍 |
|---|---|
| ANNetGPGPU | 一个基于 GPU (CUDA) 的人工神经网络库。 |
| btsk | 游戏行为树入门套件。 |
| Evolving Objects | 一个基于模板的 ANSI-C++ 进化计算库,可帮助您极快地编写自己的随机优化算法。 |
| Genann | 一个简单的 C 语言神经网络库。 |
| MXNet | 轻量级、可移植、灵活的分布式/移动深度学习库,具有动态、感知突变的数据流依赖调度器;支持 Python、R、Julia、Scala、Go、JavaScript 等。 |
| PyTorch | Python 中的张量和动态神经网络,具有强大的 GPU 加速功能。 |
| flashlight | Flashlight 是一个完全用 C++ 编写的快速、灵活的机器学习库。 |
| Recast/Detour | (3D)导航网格生成器和寻路器,主要用于游戏。 |
| TensorFlow | 一个使用数据流图进行数值计算的开源软件库。 |
| oneDNN | 一个用于深度学习应用的开源跨平台性能库。 |
| CNTK | Microsoft Cognitive Toolkit (CNTK),一个开源深度学习工具包。 |
| Veles | 用于快速深度学习应用开发的分布式平台。 |
| Kaldi | 语音识别工具包。 |
| 项目 | 介绍 |
|---|---|
| Clang | 由苹果公司开发的编译器。 |
| GCC | GNU 编译器集合。 |
| Intel C++ Compiler | 由英特尔公司开发。 |
| LLVM | 模块化和可重用编译器和工具链技术的集合。 |
| Microsoft Visual C++ | MSVC,由微软公司开发。 |
| Open WatCom | Watcom,C、C++ 和 Fortran 交叉编译器和工具。 |
| TCC | 轻量级的 C 语言编译器。 |
| 项目 | 介绍 |
|---|---|
| codepad | 在线编译器/解释器,一个简单的协作工具。 |
| CodeTwist | 一个简单的在线编译器/解释器,你可以粘贴 C、C++ 或者 Java 代码,在线执行并查看结果。 |
| coliru | 在线编译器/shell,支持各种 C++ 编译器。 |
| Compiler Explorer | 交互式编译器,可以进行汇编输出。 |
| CompileOnline | 在 Linux 上在线编译和执行 C++ 程序。 |
| Ideone | 一个在线编译器和调试工具,允许你在线编译源代码并执行,支持 60 多种编程语言。 |
| 项目 | 介绍 |
|---|---|
| Comparison of debuggers | 来自维基百科的调试器列表。 |
| GDB | GNU 调试器。 |
| Valgrind | 内存调试、内存泄露检测、性能分析工具。 |
| 项目 | 介绍 |
|---|---|
| AppCode | 构建于 JetBrains’ IntelliJ IDEA 平台上的用于 Objective-C、C、C++ 和 Java 开发的集成开发环境。 |
| CLion | 来自 JetBrains 的跨平台的 C/C++ 集成开发环境。 |
| Code::Blocks | 免费的 C、C++ 和 Fortran 集成开发环境。 |
| CodeLite | 另一个跨平台的免费 C/C++ 集成开发环境。 |
| Dev-C++ | 可移植的 C/C++/C++11 集成开发环境。 |
| Eclipse CDT | 基于 Eclipse 平台的功能齐全的 C 和 C++ 集成开发环境。 |
| Geany | 轻量级、快速、跨平台的集成开发环境。 |
| IBM VisualAge | 来自 IBM 的家庭计算机集成开发环境。 |
| Irony-mode | 由 libclang 驱动的用于 Emacs 的 C/C++ 微模式。 |
| KDevelop | 免费开源集成开发环境。 |
| Microsoft Visual Studio | 来自微软的集成开发环境。 |
| NetBeans | 主要用于 Java 开发的集成开发环境,也支持其他语言,尤其是 PHP、C/C++ 和 HTML5。 |
| Qt Creator | 跨平台的 C++、Javascript 和 QML 集成开发环境,也是 Qt SDK 的一部分。 |
| rtags | C/C++ 的客户端服务器索引,用于与基于 clang 的 Emacs 的集成。 |
| Xcode | 由苹果公司开发。 |
| YouCompleteMe | 一个用于 Vim 的根据你敲的代码快速模糊搜索并进行代码补全的引擎。 |
| 项目 | 介绍 |
|---|---|
| Bear | 用于为 clang 工具生成编译数据库的工具。 |
| Biicode | 基于文件的简单依赖管理器。 |
| CMake | 跨平台的免费开源软件,用于管理软件使用独立编译的方法进行构建的过程。 |
| CPM | 基于 CMake 和 Git 的 C++ 包管理器。 |
| FASTBuild | 高性能、开源的构建系统,支持高度可扩展性的编译、缓冲和网络分布。 |
| Ninja | 专注于速度的小型构建系统。 |
| Scons | 使用 Python 脚本配置的软件构建工具。 |
| tundra | 高性能的代码构建系统,即使对于非常大型的软件项目,也能提供最好的增量构建次数。 |
| tup | 基于文件的构建系统,用于后台监控变化的文件。 |
| 项目 | 介绍 |
|---|---|
| Cppcheck | 静态 C/C++ 代码分析工具。 |
| include-what-you-use | 使用 clang 进行代码分析的工具,可以 #include 在 C 和 C++ 文件中。 |
| OCLint | 用于 C、C++ 和 Objective-C 的静态源代码分析工具,用于提高质量,减少瑕疵。 |
| Clang Static Analyzer | 查找 C、C++ 和 Objective-C 程序 bug 的源代码分析工具。 |
| List of tools for static code analysis | 来自维基百科的静态代码分析工具列表。 |
| 项目 | 介绍 |
|---|---|
| C++ Standard Library | 一系列类和函数的集合,使用核心语言编写,也是 C++ ISO 自身标准的一部分。 |
| Standard Template Library | 标准模板库。 |
| C POSIX library | POSIX 系统的 C 标准库规范。 |
| ISO C++ Standards Committee | C++ 标准委员会。 |
| C++ FAQ | C++ 常见问题。 |
| Free Country | Free Country 提供了免费的 C++ 源代码和 C++ 库,这些源代码和库涵盖了压缩、存档、游戏编程、标准模板库和 GUI 编程等 C++ 编程领域。 |
| C and C++ Users Group | C 和 C++ 的用户团体提供了免费的涵盖各种编程领域 C++ 项目的源代码,包括 AI、动画、编译器、数据库、调试、加密、游戏、图形、GUI、语言工具、系统编程等。 |
| LearnCpp | 免费学习 C++ 编程。 |
| CodeCogs | CodeCogs 是一项协作的开放源码库,提供 C/C++ 数值方面的组件。 |
| codeproject | CodeProject 提供的 C/C++ 资源代码项目。 |
| thoughtco | 游戏相关的 C++ 源代码。 |
| Free C/C++ Libraries | 免费 C++ 源代码和其他有用的工具。 |
| The C++ Standard Library | 这是一个收集了许多 C/C++ 网站链接列表的网页。 |
| cplusplus | C++ 学习网站。 |
| C++ Source Codes | 这是一个全面的关于 C++ 的 345 个源代码清单。 |
本项目内容均来源于互联网公开资料,仅供学习交流使用,版权归原作者所有。