table of contents
std::ranges::take_view::size(3) | C++ Standard Libary | std::ranges::take_view::size(3) |
NAME¶
std::ranges::take_view::size - std::ranges::take_view::size
Synopsis¶
constexpr auto size() requires ranges::sized_range<V>;
(1) (since C++20)
constexpr auto size() const requires ranges::sized_range<const V>;
(2) (since C++20)
Returns the number of elements, which is the smaller of the count passed to
the
constructor and the size of the underlying view.
Let base_ be the underlying view, count_ be the number passed to the
constructor (0
if default constructed). Equivalent to
auto n = ranges::size(base_);
return ranges::min(n, static_cast<decltype(n)>(count_));
Parameters¶
(none)
Return value¶
The number of elements.
Example¶
// Run this code
#include <iostream>
#include <ranges>
int main()
{
constexpr int arr[]{1, 2, 3};
for (int i = 0; i != 6; ++i)
{
const auto tv = std::ranges::take_view{arr, i};
std::cout << tv.size() << ' ';
}
std::cout << '\n';
}
Output:¶
0 1 2 3 3 3
See also¶
ranges::size returns an integer equal to the size of a range
(C++20) (customization point object)
ranges::ssize returns a signed integer equal to the size of a range
(C++20) (customization point object)
2024.06.10 | http://cppreference.com |