- ranges[meta header]
- std::ranges[meta namespace]
- view_interface[meta class]
- function template[meta id-type]
- cpp20[meta cpp]
template<random_access_range R = D>
constexpr decltype(auto) operator[](range_difference_t<R> n) // (1)
template<random_access_range R = const D>
constexpr decltype(auto) operator[](range_difference_t<R> n) const // (2)
- random_access_range[link ../random_access_range.md]
- range_difference_t[link ../range_difference_t.md]
Rangeの要素にアクセスする。
R
がrandom_access_range
であること。
(1)、(2)共に、以下と等価:
ranges::begin(derived())[n];
- ranges::begin[link ../begin.md]
- derived[link derived.md]
償却定数時間
- C++20
- Clang: 13.0.0 [mark verified]
- GCC: 10.1.0 [mark verified]
- ICC: ?
- Visual C++: 2019 Update 10 [mark verified]