- 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)Rangeの要素にアクセスする。
Rがrandom_access_rangeであること。
(1), (2)共に、以下と等価:
ranges::begin(derived())[n];- 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]