ein*_*ica 5 string-view guideline-support-library string-span
据我所知,gsl::string_span并std::string_view似乎有本质上使用的同一个道理。真的是这样吗?如果是这样,它们实际上是否相同?如果不是 - 它们有什么不同?
有何
gsl::string_span不同std::string_view?
它们的可用方式有一个相当明显的区别,但我会这么说,因为它很重要:gsl::string_span需要使用第三方库,而std::string_view是标准 C++ 类型。另一方面,提供的库gsl::string_span支持C++14,而 std::string_view需要C++17。
主要的设计差异是,它std::string_view是字符串的 const 视图,并且不提供任何修改所查看字符串的方法,而gsl::string_span允许非常量访问。例如:
constexpr iterator gsl::string_span::begin() const noexcept
^^^^^^^^ note non-const iterator ^^^^^ also note this
Run Code Online (Sandbox Code Playgroud)
另请注意gsl::string_span即使跨度本身是 const,如何允许非常量访问。换句话说,gsl::string_span不会传播常量。std::span这与和相同gsl::span。
| 归档时间: |
|
| 查看次数: |
1150 次 |
| 最近记录: |