std::span<T,Extent>::size

From cppreference.com
< cpp‎ | container‎ | span
 
 
 
std::span
Member functions
(C++20)
Element access
(C++20)
(C++20)
Iterators
(C++20)(C++23)
(C++20)(C++23)
Observers
span::size
(C++20)
Subviews
(C++20)
Non-member functions
Non-member constant
Deduction guides(C++20)
 
constexpr size_type size() const noexcept;
(since C++20)

Returns the number of elements in the span.

Parameters

(none)

Return value

The number of elements in the span.

Note

Feature-test macro Value Std Comment
__cpp_lib_ssize 201902L (C++20) std::ssize and unsigned std::span::size

Example

#include <iostream>
#include <span>
 
void show_sizes(std::span<const int> span)
{
    std::cout
        << span                 .size() << ' ' // 8
        << span.first(7)        .size() << ' ' // 7
        << span.first<6>()      .size() << ' ' // 6
        << span.last(5)         .size() << ' ' // 5
        << span.last<4>()       .size() << ' ' // 4
        << span.subspan(2, 3)   .size() << ' ' // 3
        << span.subspan<3, 2>() .size() << ' ' // 2
        << '\n';
}
 
int main()
{
    int antique_array[]{1, 2, 3, 4, 5, 6, 7, 8};
    show_sizes(antique_array);
}

Output:

8 7 6 5 4 3 2

See also

constructs a span
(public member function)
returns the size of the sequence in bytes
(public member function)