0

According to cppreference, in C++20, std::span is supposed to be constructible using container references:

template <class Container>
constexpr span(Container& cont);
template <class Container>
constexpr span(const Container& cont);

but in the master branch of libstdc++'s span file (as of Jan 18th 2020), I don't see these constructors. I do see a constructor taking a Range&& - is that a sufficient replacement? Or - am I missing something?

4

1 回答 1

3

在处理不断变化的 C++ 功能(例如尚未完成的标准)时,最好转到源代码而不是像 Cppreference 这样的辅助文档。

在撰写本文时,该标准的工作草案执行 libstdc++ 所说的:可以采用&&连续范围的单个重载。此功能的限制与 Cppreference 中的限制非常相似,它们基本上是不同的表达方式,但 libstdc++ 正在实施当前存在的标准。

于 2020-01-18T21:26:15.627 回答