std::ranges::view_interface<D>::operator[]
De cppreference.com
< cpp | ranges | view interface
template<ranges::random_access_range R = D> constexpr decltype(auto) operator[](ranges::range_difference_t<R> n ); | (1) | (desde C++20) |
template<ranges::random_access_range R =const D> constexpr decltype(auto) operator[](ranges::range_difference_t<R> n )const; | (2) | (desde C++20) |
La implementación por defecto de la función miembro operator[] obtiene el elemento en el desplazamiento especificado relativo al iterador al comienzo, reutilizando operator[] del tipo iterador.
2) Igual que (1), excepto que
derived
es static_cast<const D&>(*this).Contenido |
[editar]Parámetros
n | - | La posición del elemento a devolver. |
[editar]Valor de retorno
El elemento en el desplazamiento n
relativo al iterador al comienzo.
[editar]Notas
En C++20, ningún tipo derivado de std::ranges::view_interface en la biblioteca estándar proporciona su propia función miembro operator[].
Sin embargo, los siguientes tipos derivados no pueden usar la implementación por defecto, ya que nunca satisfacen random_access_range
:
- std::ranges::basic_istream_view
- std::ranges::filter_view
- std::ranges::join_view
- std::ranges::lazy_split_view
- std::ranges::split_view
La función miembro operator[] heredada está disponible para std::ranges::empty_view, pero llamarla siempre resulta en comportamiento no definido.
[editar]Ejemplo
Esta sección está incompleta Razón: sin ejemplo |