std::ranges::transform_view<V,F>::size
ja.cppreference.net より
constexpr auto size() requires ranges::sized_range<V>;
|
(1) | (C++20 以降) |
constexpr auto size() const requires ranges::sized_range<const V>;
|
(2) | (C++20 以降) |
要素の数を返します。ranges::size(base_) と同等です。
戻り値
要素数。
注記
V
が
forward_range
をモデル化しない場合、
begin()
の呼び出し後、
size()
は well-defined でない可能性があります。
例
このコードを実行
#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}}; for (assert(tv.size() == 42); const auto c : tv) std::cout << c; }
出力:
THE LENGTH OF THIS STRING IS 42 CHARACTERS
関連項目
|
(C++20)
|
範囲のサイズに等しい整数を返す
(カスタマイゼーションポイントオブジェクト) |
|
(C++20)
|
範囲のサイズに等しい符号付き整数を返す
(カスタマイゼーションポイントオブジェクト) |