|
|
constexpr | Span (std::initializer_list< T > init) noexcept |
| |
|
constexpr | Span (pointer ptr, index_type count) noexcept |
| |
|
constexpr | Span (pointer first, pointer last) noexcept |
| |
|
template<std::size_t N> |
| constexpr | Span (element_type(&arr)[N]) noexcept |
| |
|
template<typename U , std::size_t N> |
| constexpr | Span (std::array< U, N > &arr) noexcept |
| |
|
template<typename U , std::size_t N> |
| constexpr | Span (const std::array< U, N > &arr) noexcept |
| |
|
template<typename U > |
| constexpr | Span (const std::vector< U > &span) noexcept |
| |
|
template<typename U > |
| constexpr | Span (std::vector< U > &span) noexcept |
| |
|
constexpr reference | operator[] (index_type idx) const noexcept |
| |
|
constexpr reference | front () const noexcept |
| |
|
constexpr reference | back () const noexcept |
| |
|
constexpr pointer | data () const noexcept |
| |
|
constexpr iterator | begin () const noexcept |
| |
|
constexpr iterator | end () const noexcept |
| |
|
constexpr const_iterator | cbegin () const noexcept |
| |
|
constexpr const_iterator | cend () const noexcept |
| |
|
constexpr reverse_iterator | rbegin () const noexcept |
| |
|
constexpr reverse_iterator | rend () const noexcept |
| |
|
constexpr const_reverse_iterator | crbegin () const noexcept |
| |
|
constexpr const_reverse_iterator | crend () const noexcept |
| |
|
constexpr bool | empty () const noexcept |
| |
|
constexpr index_type | size () const noexcept |
| |
|
constexpr index_type | size_bytes () const noexcept |
| |
|
A_CONSTEXPR_CXX14 Span | subspan (index_type offset, index_type count=static_cast< index_type >(-1)) const noexcept |
| |
|
constexpr Span | first (index_type count) const noexcept |
| |
|
constexpr Span | last (index_type count) const noexcept |
| |
template<typename
T, size_t Extent = dynamic_extent>
class ast::Span< T, Extent >
非拥有的连续对象序列视图
与C++20的 std::span 功能相似且API兼容,不负责管理内存生命周期。
- 模板参数
-
| T | 元素类型 |
| Extent | 序列长度,-1表示动态长度 |