std::ranges::take_view<V>::size
来自 cppreference.com
constexpr auto size() requires ranges::sized_range<V>; |
(1) | (自 C++20 起) |
constexpr auto size() const requires ranges::sized_range<const V>; |
(2) | (自 C++20 起) |
返回元素数量,它是构造函数中传递的计数与底层视图大小的较小值。
令 base_
为底层视图,count_
为底层计数器(如果默认构造则等于 0)。等效于
auto n = ranges::size(base_); return ranges::min(n, static_cast<decltype(n)>(count_));
内容 |
[编辑] 参数
(无)
[编辑] 返回值
元素数量。
[编辑] 示例
运行此代码
#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'; }
输出
0 1 2 3 3 3
[编辑] 另请参见
(C++20) |
返回一个等于范围大小的整数 (定制点对象) |
(C++20) |
返回一个等于范围大小的有符号整数 (定制点对象) |