ITADN
p-ranav/awesome-hpp
p-ranav/awesome-hpp · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Awesome header-only C++ libraries

目录

参数解析器

星标数描述许可证
Argh!GitHub starsArgh! 一个极简的参数处理器。License
argparseGitHub stars现代 C++ 的参数解析器。License: MIT
argsGitHub stars一个简单的仅头文件 C++ 参数解析库。License: MIT
cmd_line_parserGitHub starsC++17 的命令行解析器。License: MIT
CLI11GitHub starsCLI11 是一个适用于 C++11 及更高版本的命令行解析器。License
clippGitHub stars用于现代 C++ 的强大且富有表现力的参数解析。License: MIT
cxxoptsGitHub stars轻量级 C++ GNU 风格选项解析库。License: MIT
fire-hppGitHub stars使用函数签名创建完全功能性的 CLI。License
flagsGitHub stars简单、可扩展、仅头文件的 C++17 参数解析器。License: Unlicense
structoptGitHub stars通过定义结构体来解析命令行参数。License: MIT

音频

星标数描述许可证
miniaudioGitHub stars用 C 编写的音频播放和捕获库,位于单个源文件中。License: Unlicense
minimp3GitHub stars极简的 MP3 解码器单头文件库。License: CC0-1.0

基准测试

星标数描述许可证
criterionGitHub stars现代 C++ 的微基准测试。License: MIT
nanobench[GitHub stars简单、快速、精确的 C++11 微基准测试。License: MIT
picobenchGitHub stars一个用于 C++11 的小型微基准测试库。License: MIT

通信

星标数描述许可证
commsGitHub stars在 >=C++11 中实现二进制通信协议。License: MPL 2.0

压缩

星标数描述许可证
GzipGitHub starsGzip 头文件 C++ 库。License
interpolative_codingGitHub stars二进制插值编码算法。License: MIT
zstrGitHub stars一个 C++ 头文件 ZLib 封装。License: MIT

并发

星标数描述许可证
cs_libguardedGitHub stars多线程编程。License
taskflowGitHub stars现代 C++ 并行任务编程。License: MIT
task_systemGitHub stars更好的代码:并发 - Sean Parent。License: MIT
transwarpGitHub stars一个用于任务并发的 C++ 头文件库。License: MIT
taskpoolGitHub stars现代 C++ 任务池。License: MIT
thread-poolGitHub stars现代 C++20 线程池。License: MIT

加密与安全

LibraryStarsDescriptionLicense
cppcodecGitHub stars编码/解码 base64、base64url、base32 等。License: MIT
digestppGitHub stars    C++11 仅头文件的消息摘要库。License: Unlicense
PicoSHA2GitHub stars仅头文件的 C++ SHA256 哈希生成器。License: MIT
plusaesGitHub stars仅头文件的 C++ AES 加密库。License
stduuidGitHub stars一个 C++17 跨平台 UUID 实现。License: MIT

Databases

LibraryStarsDescriptionLicense
OTLOracle、ODBC 和 DB2-CLI 模板库。OpenBSD

Data Formats

星标数描述许可证
bencodeGitHub starsC++20 bencode 库。License
Boost.JSONGitHub starsJSON 解析、序列化、检查和修改。License
cpptomlGitHub stars用于解析 TOML 的仅头文件库。License: MIT
csv2GitHub stars面向现代 C++ 的快速 CSV 解析器和写入器。License: MIT
CSV ParserGitHub stars读取、写入和分析 CSV 文件。License: MIT
daw_json_linkGitHub starsC++ 中的静态 JSON 解析。License
Fast C++ CSV ParserGitHub stars用于读取 CSV 文件的快速库。License
FlatJSONGitHub stars极快的单次分配和零拷贝 JSON 解析器。License
GlazeGitHub stars面向现代 C++ 的极快、内存中的 JSON 和接口库。License: MIT
inihGitHub stars这是 inih 的仅头文件 C++ 版本。License
nlohmann/jsonGitHub stars现代 C++ 的 JSON。License: MIT
json_structGitHub stars高性能,仅单个头文件,用于将 JSON 序列化和反序列化为 C++ 结构体。License: MIT
jsonconsGitHub stars构建 JSON 和类 JSON 数据格式。License
minicsvGitHub stars基于 C++ 文件流的极简 CSV 流。License: MIT
picojsonGitHub starsC++ 中的仅头文件 JSON 解析器序列化器。License
pugixmlGitHub stars          具有类似 DOM 接口和 XPath 1.0 支持的 C++ XML 处理库。License: MIT
rapidcsvGitHub starsC++ CSV 解析库。License
rapidjsonGitHub stars用于 C++ 的快速 JSON 解析器/生成器。License: MIT
rapidxmlGitHub stars          RapidXML 分支;支持 XML 命名空间、逐元素解析等。License
simdjsonGitHub stars每秒解析数 GB 的 JSON。License
simpleiniGitHub stars读取和写入 INI 风格的配置文件。License: MIT
taocpp JSONGitHub starsC++ 仅头文件 JSON 库。License: MIT
toml11GitHub stars现代 C++ 的 TOML 库。License: MIT
tomlplusplusGitHub stars适用于 >=C++17 的 TOML 配置文件解析器和序列化器。License: MIT
tortelliniGitHub stars一个非常简单的 C++11 INI 文件格式。License: Unlicense License: MIT
valijsonGitHub starsJSON Schema 验证。License
xml2jsonGitHub stars一个将 XML 转换为 JSON 的仅头文件 C++ 库。License: MIT

数据挖掘、机器学习与深度学习

Stars描述许可证
dlibGitHub stars用于现实世界机器学习和数据分析的工具包。License
frugally deep[GitHub stars在 C++ 中使用 Keras 模型。License: MIT
gaenariGitHub starsC++17 中的增量决策树。License
hnswlibGitHub stars快速近似最近邻。License
MiniDNNGitHub stars用于深度神经网络的仅头文件 C++ 库。License: MPL 2.0
mlpackGitHub starsmlpack:一个快速、仅头文件的 C++ 机器学习库。License
nanoflannGitHub stars使用 KD 树的最近邻 (NN) 搜索。License
tiny-dnnGitHub starsC++14 中无依赖的深度学习框架。License

数据格式化与展示

星标数描述许可证
asapGitHub stars创建、显示、迭代和操作日期。License: MIT
cxx prettyprintGitHub starsC++(0x) 中任意容器的格式化打印。License
emioGitHub stars一个安全且快速的高层和底层字符输入/输出 C++20 库。License: MIT
fmtGitHub stars一个现代格式化库。License: MIT
pprintGitHub stars现代 C++ 的格式化打印器。License: MIT
strfGitHub stars一个用于 C++14 的快速格式化库。License
tabulateGitHub stars现代 C++ 的表格生成器。License: MIT

数据查询

星标数描述许可证
boolinqGitHub stars最简单的 C++ 仅头文件 LINQ 模板库。License: MIT

数据结构与算法

星标数描述许可证
BitMagicGitHub stars压缩位向量、逻辑运算、内存紧凑容器。License
concurrent queueGitHub stars快速多生产者、多消费者无锁并发队列。License License
dynamic bitsetGitHub starsC++17 仅头文件动态位集。License: MIT
frozenGitHub starsC++14 用户的 gperf 的 Constexpr 替代方案。License
hopscotch mapGitHub stars          使用 hopscotch 哈希的快速哈希映射和哈希集合。License: MIT
immerGitHub stars后现代不可变和持久化数据结构。License
MPMCQueueGitHub stars有界多生产者多消费者并发队列。License: MIT
outcomeGitHub stars轻量级 outcome 和 resultLicense
parallel hashmapGitHub stars非常快速且内存友好的哈希映射和 btree 容器。License
PGM-indexGitHub stars                使用比其他容器少几个数量级的内存,对数十亿项进行极速查询和更新。License
robin-hood hashingGitHub stars基于 robin hood 哈希的快速且内存高效的哈希表。License: MIT
robin-mapGitHub stars使用 Robin Hood 哈希的快速哈希映射和哈希集合。License: MIT
sfl-libraryGitHub stars小型向量。小型扁平 map/multimap/set/multiset(有序和无序)。C++11。License: Zlib
smallGitHub stars针对容器较小时进行优化的主要 STL 容器实现。License: BSL
triesGitHub stars快速且高度可定制的 C++20 前缀树(trie)实现。License: GPL-2.0

调试

星标数描述许可证
backward-cppGitHub starsC++ 的美观堆栈跟踪格式化打印器。License: MIT

深度学习

星标数描述许可证
cerasGitHub stars基于 C++20 的深度学习引擎。License

依赖注入

星标数描述许可证
inversify-cppGitHub starsC++17 控制反转和依赖注入容器库。License: MIT

事件处理机制

星标数描述许可证
eventbusGitHub starsC++ 的中介者模式事件总线。License
eventppGitHub starsC++ 的事件分发器和回调列表。License
periodic-functionGithub Starts在指定时间间隔执行回调。License: MIT

文件系统

星标数描述许可证
simplebinstreamGitHub starsC++ 简易二进制流。License: MIT
filesystemGitHub stars适用于 C++11/14/17 的 std::filesystem 跨平台实现。License: MIT
globGitHub starsC++17 的 Glob。License: MIT
llfioGitHub starsP1031 低级文件 I/O 和文件系统库。License
mioGitHub stars跨平台 C++11 内存映射文件 I/O。License: MIT
mm_fileGitHub starsC++ 的内存映射文件。License: MIT
tinydirGitHub stars      轻量级、可移植的 C 目录和文件读取器。License

函数式编程

星标数描述许可证
FunctionalPlusGitHub starsC++ 函数式编程库。License
immerGitHub starsC++ 中的持久化函数式数据结构。License
lagerGitHub starsC++ 中类似 Redux 的单向数据流。License: MIT
schmutzGitHub stars简易的 Guile Scheme C++ 绑定。License
zugGitHub starsC++ 中的 Transducers(源自 Clojure)。License

几何、图形处理和游戏开发

星标数描述许可证
arcball_cameraGitHub stars用于图形演示的即时模式相机。License: Unlicense
BrutusGitHub stars行进立方体算法实现。License: Unlicense
cinolibGitHub stars处理多边形和多面体网格。License: MIT
crGitHub stars一个简单的 C 语言热重载仅头文件库。License: MIT
CxxSwizzleGitHub stars现代 C++ 通道混合(swizzling)仅头文件库。License: MIT
earcut.hppGitHub stars快速多边形三角剖分。License: ISC
enttGitHub stars实体组件系统(ECS)及更多功能。License: MIT
glmGitHub starsOpenGL 数学库(GLM)。License: MIT
librgGitHub stars🚀 自 2017 年以来简化多人游戏开发。License                  
micro-glGitHub stars👾 CPU 矢量图形引擎(无需 FPU 或标准库)。License: Unlicense
nanortGitHub stars现代光线追踪内核。License: MIT
pxGitHub stars线程调度、渲染等。License: MIT
Simple OpenGL LoaderGitHub stars可扩展的跨平台 OpenGL 加载器。License: MIT
SokolGitHub stars用于 C 和 C++ 的跨平台库。License: Zlib
stbGitHub stars单文件公有领域库。License: MIT
SwarmzGitHub stars用于实时应用的群体(集群)行为库。License: Unlicense
tiny-differentiable-simulatorGitHub stars              Tiny Differentiable Simulator 是一个零依赖的纯头文件 C++ 物理库。License
tinygltfGitHub starsC++11 小型 glTF 2.0 库。License: MIT
tweenyGitHub stars一个现代 C++ 补间动画库。License: MIT
VookooGitHub stars消除 Vulkan 开发的痛苦。License: MIT
voxelizerGitHub starsC99 纯头文件网格体素化器。

GPU

星标数描述许可证
thrustGitHub stars并行编程库。License                      
vudaGitHub stars                      基于 Vulkan 的库,提供 CUDA Runtime API 接口,用于编写 GPU 加速应用程序。License: MIT
mudaGitHub stars优雅的 kernel 启动、调试友好的内存访问器,以及针对 CUDA 的自动 CudaGraph 生成与更新。License

Graph

星标数描述许可证
CXXGraphGitHub stars      图表示与算法库 >= C++17                              License          
GraafGitHub stars一个通用的轻量级 C++20 图库。License: MIT

GUI

星标数描述许可证
CenturionGitHub stars一个用于 SDL2 的现代 C++17/20 封装库。License: MIT
GuiLiteGitHub stars适用于所有平台的最小化纯头文件 GUI 库(5 KLOC)。License
NuklearGitHub stars即时模式跨平台 GUI 库。License: MIT License: Unlicense
WinLambGitHub starsC++11 原生 Win32 GUI 库。License: MIT

高性能计算

星标数描述许可证
MPLGitHub stars基于 Message Passing Interface 标准的 C++11 消息传递库。License

HTTP 与 Web

星标数描述许可证
cinatra[GitHub stars现代(c++17)、跨平台的 Http 框架。[License: MIT
cpp-httplib[GitHub stars一个 C++11 跨平台 HTTP/HTTPS 库。[License: MIT
jwt-cpp[GitHub stars创建和验证 JSON web tokens。[License: MIT
RESTinio[GitHub stars异步 HTTP/WebSocket 服务器 C++14 库[License
cuehttp[GitHub stars用于 http(http/https)/websocket(ws/wss) 的现代 c++ 中间件框架。[License
libfv[GitHub starslibfv 是一个 C++20 仅头文件网络库,支持 TCP/SSL/Http/websocket 服务器和客户端[License: MIT
NetIF[GitHub starsC++14 中无需名称查找的跨平台网络接口地址。[License

图像处理

星标数描述许可证
BitmapPlusPlus[GitHub stars简单且快速的仅头文件 Bitmap (BMP) 库。[License: MIT
CImg[GitHub starsCool Image,单文件:功能齐全的图像处理。[License: MIT
color-util[GitHub starsRGB、HSL、XYZ、Lab 等颜色的色彩空间转换器。[License: MIT
color[GitHub stars针对不同类型和格式的颜色操作/转换。[License: MIT
nanopm[GitHub starsNanoPM,单头文件 PatchMatch。
noise2d[GitHub stars用于 C++17 及更高版本的 2D 噪声生成。[License: MIT

语言绑定

星标数描述许可证
jni.hppGitHub stars一个现代、类型安全的 C++14 JNI 封装库。License: MIT
pybind11GitHub starsC++11 与 Python 之间的无缝互操作。License
SeleneGitHub stars简单且对 C++11 友好的 Lua 绑定。License: Zlib
SolGitHub starsSol3 (sol2 v3.0) - 一个具有高级功能和顶级性能的 C++ <-> Lua API 封装库。License
v8ppGitHub stars将 C++ 函数和类绑定到 V8 JavaScript 引擎。License

语言开发

星标数描述许可证
Command InterpreterGitHub stars为任何 C++ 程序添加命令解释器(例如,REPL)。License

日志记录

星标数描述许可证
easyloggingppGitHub stars单头文件 C++ 日志库。License: MIT
plogGitHub stars可移植、简单且可扩展的 C++ 日志库。License: MPL 2.0
spdlogGitHub stars快速的 C++ 日志库。License: MIT

数学

星标数描述许可证
amgclGitHub stars使用代数多重网格方法求解大型稀疏线性方程组。License: MIT
dj_fftGitHub starsFFT 库。License: MIT License: Unlicense
eigen用于线性代数的模板库。License                  
exprtkGitHub starsC++ 数学表达式工具包。License: MIT
fpmGitHub stars定点数学库。License: MIT
kfrGitHub stars快速 DSP 框架,FFT,采样率转换等。License: GPL v2
libmortonGitHub stars                  高效地编码/解码 2D/3D 坐标中的 Morton 码的方法。License: MIT
linalgGitHub starsC++ 短向量数学库。License: Unlicense
matplotlib-cppGitHub stars基于流行的 matplotlib 构建的 C++ 绘图库。License: MIT
mathplotGitHub stars用于仿真的数据可视化 (C++20)。License
matrixGitHub starsC++20 中的 2D 矩阵库。License
NumCppGitHub starsPython Numpy 库的 C++ 实现。License: MIT
randomGitHub stars具有便捷 API 的现代 C++ 随机数库。License: MIT
spectraGitHub stars用于大规模特征值问题的仅头文件 C++ 库。License: MPL 2.0
universalGitHub stars通用数字算术。License: MIT

内存管理

星标数描述许可证
ugcGitHub stars增量垃圾回收器。License

模拟

星标数描述许可证
FakeItGitHub stars让 C++ 模拟变得简单。License: MIT
trompeloeilGitHub starsC++14 模拟框架。License

网络

星标数描述许可证
asioGitHub starsAsio C++ 库。
asio-grpcGitHub stars使用 Asio/统一执行器的异步 gRPC。License
brynetGitHub stars跨平台 C++ TCP 网络库。License: MIT
cppzmqGitHub starslibzmq 的仅头文件 C++ 绑定。License: MIT
nygmaGitHub stars网络数据包处理与索引。License: BlueOak
uvwGitHub stars现代 C++ 中的 libuv 封装。License: MIT

优化

星标数描述许可证
ensmallenGitHub stars用于数值优化的 C++ 库。License

解析

星标数描述许可证
lexertl14GitHub stars模块化词法分析器生成器。License
Matcheroni & ParseroniGitHub stars用于使用解析表达式文法进行模式匹配的 C++20 库License: MIT
parsertl14GitHub stars模块化解析器生成器。License

解析表达式文法

星标数描述许可证
cpp-peglibGitHub starsPEG(解析表达式文法)库。License: MIT
lugGitHub stars一种 C++17 嵌入式领域特定语言,用于将解析器表示为扩展 PEG。License: MIT
PEGTLGitHub stars解析表达式文法模板库。License: MIT

可移植性定义

星标数描述许可证
hedleyGitHub stars将 #ifdef 移出你的代码。License: CC0-1.0

反射

星标数描述许可证
better-enumsGitHub starsC++ 编译期枚举转字符串、迭代。License
magic_enumGitHub stars枚举的静态反射。License: MIT
metaGitHub stars无宏的运行时反射系统。License: MIT
nameofGitHub stars现代 C++ 的 nameof 运算符。License: MIT
refl-cppGitHub stars编译期反射库。License: MIT
visit_structGitHub stars用于结构体字段反射的微型库。License

正则表达式

星标数描述许可证
compile-time regular expressionsGitHub stars        编译期正则表达式匹配器。License
SRELLGitHub stars        兼容 ECMAScript (JavaScript) 的正则表达式引擎。License

机器人学

星标数描述许可证
manifGitHub stars李理论的微型库。License: MIT

序列化

星标数描述许可证
alpacaGitHub stars使用 C++17 编写的序列化库。License: MIT
cerealGitHub stars一个用于序列化的 C++11 库。License
essentialsGitHub stars透明的序列化/反序列化。License: MIT
fuserGitHub stars自动将 C++ 类型 (反)序列化为 JSON。License: MIT
YASGitHub stars一个支持二进制/文本/JSON 归档的 C++11 (反)序列化库。License: MIT
cistaGitHub stars简单、高性能、零拷贝的 C++ 序列化与反射库。License: MIT

SIMD

| 库 | 星标数 |