Abseil系列一:简介

关于

Abseil 由 Google 的基础 C ++ 和 Python 代码库组成,包括一些正支撑着如 gRPCProtobufTensorFlow 等开源项目并一起 “成长” 的库。目前已开源 C++ 部分,Python 部分将在后续开放。

Abseil 目前开放的 C++ 标准库的扩充库,是从 Google 内部 C ++ 代码库抽取出来的基础库的合集。这些库在 Google 内部经过广泛的测试和生产使用,是 Google 大量运行内容的基石。

多数情况下,Abseil 提供了 C ++ 标准中缺失的部分;此外,Abseil 还提供了一些特殊需求标准的替代方案。

Abseil的C++部分github代码库:GitHub - abseil/abseil-cpp: Abseil Common Libraries (C++)

代码概览

Abseil包含以下c++库组件:

  • base

    基础库包含初始代码和其他Abseil代码所依赖的代码。 base中的代码可能不依赖于任何其他代码(c++标准库除外)。

  • algorithm

    算法库包含对c++ 库和基于容器的算法的补充。

  • cleanup

    清理库包含类似控制流构造的类型absl:: cleanup,用于在范围退出时执行回调。

  • container

    容器库包含额外的stl风格的容器,包括Abseil的无序“Swiss table”容器。

  • debugging

    调试库包含用于启用泄漏检查、堆栈跟踪和符号化的实用代码。

  • flags

    flags库包含处理Abseil构建的库和二进制程序的命令行标志的代码。

  • hash
    哈希库包含了Abseil中哈希类型的哈希框架和默认哈希函数实现。

  • iterator

    迭代器库包含用于在基于范围的for循环中增加范围的实用程序。

  • log
    日志库包含log和CHECK宏以及将日志消息写到磁盘、stderr或用户可扩展的目的地的工具。

  • memory

    内存库包含对c++的库进行扩充的内存管理工具。

  • meta

    元库包含在c++ <type_traits>库的c++ 14和c++ 17版本中可用的类型检查的兼容版本。

  • numeric

    数值库包含128位整数类型以及c++ 20的逐位数学函数的实现。

  • profiling

    分析库包含用于分析c++实体的工具代码。 它目前是其他Abseil库的私有依赖项。

  • random

    随机库包含用于生成伪随机值的函数。

  • status

    状态库包含错误处理的抽象,特别是absl:: status和absl::StatusOr。

  • strings

    字符串库包含各种字符的常规用法和实用工具,包括c++ 17 std::string_view类型的c++ 14兼容版本。

  • synchronization

    同步库包含并发原语(Abseil的absl::Mutex类是std:: Mutex的替代方案)和各种同步抽象。

  • time

    时间库包含用于计算绝对时间点、时间持续时间以及在时区内格式化和解析时间的抽象。

  • types

    类型库包含非容器实用程序类型,比如c++ 17 std::可选类型的c++ 14兼容版本。

  • utility

    工具库包含实用工具和辅助程序代码。

License

Abseil c++库是在Apache许可条款下授权的。 有关更多信息,请参阅许可证: https://github.com/abseil/abseil-cpp/blob/master/LICENSE)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaobaiPlayGame

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值