variant
可替代boost::variant的仅头文件C++11/C++14库,以类型安全方式保存多种类型之一,例如结果或错误。
分享到 X许可证: BSD-3-Clause
概述
Mapbox Variant 是面向 C++11 和 C++14 的仅头文件库,可替代 boost::variant。它以类型安全的方式持有多种类型中的一种,例如结果或错误二选一的 API 响应。它提供基于 lambda 的模式匹配、访问器,以及用于 JSON 这类树形结构的递归包装类型,且没有任何依赖。
主要特点
- 类型安全的 variant,表示和类型或可辨识联合
- match() 接收多个 lambda 并检查是否覆盖所有类型
- apply_visitor 与 get() 用于访问或取出值
- recursive_wrapper 可表达 JSON 树等递归类型
适用场景
适合想使用 variant 但不想依赖 Boost 的 C++11 或 C++14 项目。它以与 boost::variant 接口兼容为目标,但只实现实际需要的功能。
- 上游仓库
- mapbox/variant
- GitHub 上的 fork
- Guo-astro/variant
- 上游 Star 数
- 384
- 分类
- 开发者工具与基础设施
- 编程语言
- C++
- 许可证
- BSD-3-Clause
- Fork 时间
- 2020-11-01
- 同步状态
- 已同步上次同步 2026-10-16
同分类更多: 开发者工具与基础设施
Rustrak是可自托管的错误跟踪工具,通过兼容 Sentry 的 SDK 收集错误等数据,供用户在自己的环境中监控应用。
Fork 时间 2026-10-15上次同步 2026-10-16许可证: GPL-3.0开发者工具与基础设施GitHub
WrapPin 是面向 iOS 27 及以上设备的位置测试工具。可测试固定地点或步行、驾车路线,并在结束时恢复真实位置。
Fork 时间 2026-10-14上次同步 2026-10-16自定义许可证(见仓库)开发者工具与基础设施GitHub
Homelable 帮助自托管家庭实验室的用户扫描并绘制基础设施、记录设备信息和查看服务运行状态。
Fork 时间 2026-10-14上次同步 2026-10-16许可证: MIT开发者工具与基础设施GitHub
Repowise在本机索引代码、调用图、Git历史、测试、文档和设计决策,帮助开发者和编码代理了解依赖、查找无用代码并确定修复重点。
Fork 时间 2026-10-14上次同步 2026-10-16许可证: AGPL-3.0开发者工具与基础设施GitHub