std::ranges::transform_view<V,F>::size
来自cppreference.com
< cpp | ranges | transform view
constexpr auto size() requires ranges::sized_range<V>; |
(C++20 起) | |
constexpr auto size() const requires ranges::sized_range<const V>; |
(C++20 起) | |
返回元素数。
返回 ranges::size(base_),其中 base_
是底层视图。
参数
(无)
返回值
元素数。
注解
若 V
不实现 forward_range
,则 size()
在调用 begin()
后可能非良定义。
示例
运行此代码
#include <cassert> #include <cctype> #include <iostream> #include <ranges> #include <string> int main() { std::string s{"The length of this string is 42 characters"}; auto to_upper = [](unsigned char c) -> char { return std::toupper(c); }; auto tv = std::ranges::transform_view{s, to_upper}; assert(tv.size() == 42); for (auto x : tv) std::cout << x; }
输出:
THE LENGTH OF THIS STRING IS 42 CHARACTERS
参阅
(C++20) |
返回等于范围大小的整数 (定制点对象) |
(C++20) |
返回等于范围大小的有符号整数 (定制点对象) |