微软的(核心)指南支持库实现据说支持 GCC 5.1 - 但没有指定对其他版本的支持。更高的版本似乎没问题(无论如何,我的 Debian Stretch 上是 5.3.1) - 但是使用 GCC 4.9.3 构建测试失败。
- 其他人实施了 GSL 吗?
- 无论如何,我可以使用 MS GSL 吗?
- 如果没有,我可以使用它的一些安全子集吗?(可能不会,我知道)
- 如果不是,那么只有拥有较新编译器的人才能拥有指南支持库,这不是一个问题吗?即使他们的旧编译器支持 C++11 甚至 C++14?
微软的(核心)指南支持库实现据说支持 GCC 5.1 - 但没有指定对其他版本的支持。更高的版本似乎没问题(无论如何,我的 Debian Stretch 上是 5.3.1) - 但是使用 GCC 4.9.3 构建测试失败。
是的,我知道有一个:gsl-lite。
到目前为止,它对我来说效果很好。但是我将编译器更改为较新的版本,不再需要它。
您还可以使用 Microsoft 实现的(相当小的)子集。如果你不需要span
-classes。它们是gsl_assert.h
( Expects
, Ensures
) 和gsl_utils.h
( narrow
, final_act
, ...)。我想我可能只是调整了一些constexpr
相关的东西。