型推定ガイドstd::ranges::iota_view
ja.cppreference.net から
| ヘッダで定義 <ranges>
|
||
template< class W, class Bound >
requires (!/*is-integer-like*/<W> ||
!/*is-integer-like*/<Bound> ||
/*is-signed-integer-like*/<W> == /*is-signed-integer-like*/<Bound>)
iota_view( W, Bound ) -> iota_view<W, Bound>;
|
(C++20以降) | |
この型推定ガイドは、iota_viewの初期値と境界値からの型推定を可能にするために提供されます。
/*is-integer-like*/および/*is-signed-integer-like*/の定義については、is-integer-like を参照してください。
このガイドは、符号の不一致に起因するバグから自身を保護することに注意してください。例えば、views::iota(0, v.size())などです。ここで0は符号付きで、v.size()は符号なしです。
例
このコードを実行
#include <cassert> #include <ranges> int main() { auto io = std::ranges::iota_view(1L, 7L); // WとBoundを「long」と推論 assert(io.front() == 1L and io.back() == 6L); }