c++ - 我应该在新的 C++ 项目中使用指南支持库 (GSL) 吗?

标签 c++ cpp-core-guidelines guideline-support-library

在新的 C++ 项目中支持和反对使用指南支持库 (GSL) 的优点和缺点是什么?我发现那里的一些结构非常有吸引力,但我有点害怕包含和依赖这样一个基本的库。

最佳答案

GSL 只是 C++ 核心指南的支持库。如果您使用 GSL,那么这些核心准则应该是您应用于代码的准则(而不是 Google 的准则或在线找到的任何其他准则)。您不需要 GSL 作为核心指南,也不需要使用 GSL 中的所有内容。就我个人而言,我已经开始将它用于简单的部分,例如 indexnot_null

GSL并不完美,有很多东西可以/应该添加,它并不妨碍我做疯狂的事情,但它有助于为我正在做的事情添加一个框架/某种验证。它还消除了 index 的签名/未签名问题。

我建议在新项目中使用它,因为它的运行时开销应该为零,但这是一个品味问题。如果您的项目有很多新开发人员(或幼儿),那么需要考虑帮助他们成长。

关于c++ - 我应该在新的 C++ 项目中使用指南支持库 (GSL) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54215216/

相关文章:

c++ - 对前 N 个素数求和

c++ - 在 Windows 上使用 MinGW 构建黄金链接器,未在此范围内声明 FLEX/bison 'YYSTYPE'

c++ - 函数返回的 gsl::span 有错误的字节

c++ - 带有 aerospike_query_foreach 的回调函数给出构建错误

c++ - C/C++ - 为 PUT 请求实现 http 协议(protocol)

c++ - "Moving"指向指针的顺序容器

c++ - CppCoreGuidelines : What are hot int copies?

c++ - 如何使用 C++ Expects 运算符?

c++ - gsl::not_null<T*> 与 std::reference_wrapper<T> 与 T&

c++ - gsl::span - 指向结束的指针