drop_view
classe (libreria standard C++)
Creare una vista che esclude i primi N elementi di un intervallo.
Sintassi
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>;
Parametri del modello
V
Tipo della vista sottostante.
Visualizzare le caratteristiche
Per una descrizione delle voci seguenti, vedere Visualizzare le caratteristiche della classe
Caratteristica | Descrizione |
---|---|
Adattatore di intervallo | views::drop |
Intervallo sottostante | Deve soddisfare output_range o superiore |
Tipo di elemento | Uguale all'intervallo sottostante |
Visualizzare la categoria iteratore | Uguale all'intervallo sottostante |
Dimensioni | Solo se l'intervallo sottostante soddisfa sized_range |
Iterabile const |
Solo se l'intervallo sottostante è const iterabile e soddisfa random_access_range e sized_range |
Intervallo comune | Solo se l'intervallo sottostante è un common_range |
Intervallo preso in prestito | Solo se l'intervallo sottostante soddisfa borrowed_range |
Membri
Funzioni membro | Descrizione |
---|---|
Costruttori C++20 | Creare un oggetto drop_view . |
base C++20 |
Ottenere la visualizzazione sottostante. |
begin C++20 |
Ottenere un iteratore al primo elemento. |
end C++20 |
Ottenere l'sentinel alla fine della visualizzazione. |
size C++20 |
Ottiene il numero di elementi in questa visualizzazione. L'intervallo sottostante deve soddisfare sized_range . |
Ereditato da view_interface |
Descrizione |
back C++20 |
Ottiene l'ultimo elemento. |
data C++20 |
Ottenere un puntatore al primo elemento. |
empty C++20 |
Verificare se l'oggetto drop_view è vuoto. |
front C++20 |
Ottenere il primo elemento. |
operator[] C++20 |
Ottiene l'elemento nella posizione specificata. |
operator bool C++20 |
Verificare se l'oggetto drop_view non è vuoto. |
Requisiti
Intestazione: <ranges>
(da C++20)
Spazio dei nomi: std::ranges
Opzione del compilatore: /std:c++20
o versione successiva è obbligatoria.
Costruttori
Costruire un'istanza di un oggetto drop_view
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>
Parametri del modello
V
Tipo della vista sottostante.
Valore restituito
Visualizzazione dell'intervallo sottostante, escluso il numero specificato di elementi dalla parte anteriore.
Se si specificano più elementi da eliminare rispetto all'intervallo sottostante, viene restituito un valore empty_view
.
Osservazioni:
Il modo migliore per creare un drop_view
oggetto consiste nell'usare l'adattatore views::drop
di intervallo. Gli adattatori di intervallo sono il modo previsto per creare classi di visualizzazione. I tipi di visualizzazione vengono esposti nel caso in cui si voglia creare un tipo di visualizzazione personalizzato.
Esempio: drop_view
// requires /std:c++20 or later
#include <ranges>
#include <iostream>
#include <vector>
int main()
{
std::vector<int> v{ 1, 2, 3, 4, 5 };
auto newView = std::views::drop(v, 3);
for (auto e : newView) // outputs 4 5
{
std::cout << e << ' ';
}
std::cout << '\n';
auto numbers = std::views::iota(0) | std::views::take(10); // generate a view of 10 integers
for (auto i : numbers | std::views::drop(5)) // use the '|' syntax to create a drop_view
{
std::cout << i << ' '; // outputs 5 6 7 8 9
}
}
4 5
5 6 7 8 9
base
Ottiene una copia della visualizzazione sottostante.
// Uses a copy constructor to return the underlying view
constexpr V base() const& requires std::copy_constructible<V>;
// Uses a move constructor to return the underlying view
constexpr V base() &&;
Parametri
Nessuna.
Valore restituito
Visualizzazione sottostante.
begin
Ottenere un iteratore al primo elemento dell'oggetto drop_view
.
constexpr auto begin()
requires (!(Simple_view<V> && ranges::random_access_range<const V> && ranges::sized_range<const V>));
constexpr auto begin() const
requires ranges::random_access_range<const V> && ranges::sized_range<const V>;
Parametri
Nessuna.
Valore restituito
Iteratore che punta al primo elemento dell'oggetto drop_view
.
end
Ottenere la sentinella alla fine del drop_view
constexpr auto end() requires (!Simple_view<V>);
constexpr auto end() const requires ranges::range<const V>;
Parametri
Nessuna.
Valore restituito
Sentinel che segue l'ultimo elemento in drop_view
:
size
Ottiene il numero di elementi nell'oggetto drop_view
.
constexpr auto size() requires ranges::sized_range<V>;
constexpr auto size() const requires ranges::sized_range<const V>;
Parametri
Nessuna.
Valore restituito
Numero di elementi in drop_view
.
Osservazioni:
L'intervallo sottostante deve soddisfare sized_range
.
Vedi anche
<ranges>
drop
adattatore di intervallo
take_while()
take_while_view
Visualizzare le classi