Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vytvořte zobrazení, které vyloučí první N elementy oblasti.
Syntaxe
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>;
Parametry šablony
V
Typ podkladového zobrazení.
Zobrazení charakteristik
Popis následujících položek naleznete v tématu Zobrazení vlastností třídy.
| Charakteristika | Popis |
|---|---|
| Adaptér rozsahu | views::drop |
| Podkladová oblast | Musí splňovat output_range nebo vyšší |
| Typ elementu | Stejné jako podkladová oblast |
| Zobrazit kategorii iterátoru | Stejné jako podkladová oblast |
| Tříděný | Pouze v případě, že základní rozsah splňuje požadavky sized_range |
Je const-iterable |
Pouze v případě, že je const základní rozsah iterovatelný a splňuje random_access_rangesized_range |
| Společný rozsah | Pouze v případě, že je podkladová oblast common_range |
| Zapůjčený rozsah | Pouze v případě, že základní rozsah splňuje požadavky borrowed_range |
Členové
| Členské funkce | Popis |
|---|---|
| KonstruktoryC++20 | Vytvoření .drop_view |
base
C++20 |
Získejte podkladové zobrazení. |
begin
C++20 |
Získejte iterátor k prvnímu prvku. |
end
C++20 |
Získejte sentinel na konci zobrazení. |
size
C++20 |
Získejte počet prvků v tomto zobrazení. Základní rozsah musí splňovat sized_range. |
Zděděno z view_interface |
Popis |
back
C++20 |
Získejte poslední prvek. |
data
C++20 |
Získejte ukazatel na první prvek. |
empty
C++20 |
Otestujte, jestli drop_view je prázdný. |
front
C++20 |
Získejte první prvek. |
operator[]
C++20 |
Získejte prvek na zadané pozici. |
operator bool
C++20 |
Otestujte, jestli drop_view není prázdný. |
Požadavky
Hlavička:<ranges> (od C++20)
Obor názvů:std::ranges
Je vyžadována možnost kompilátoru:/std:c++20 nebo novější.
Konstruktory
Vytvoření instance objektu drop_view
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>
Parametry šablony
V
Typ podkladového zobrazení.
Vrácená hodnota
Zobrazení podkladového rozsahu s výjimkou zadaného počtu prvků z přední části.
Pokud zadáte více prvků, které se mají v podkladové oblasti vypustit, empty_view vrátí se.
Poznámky
Nejlepší způsob, jak vytvořit, drop_view je použití adaptéru rozsahu views::drop . Adaptéry rozsahu představují zamýšlený způsob vytváření tříd zobrazení. Typy zobrazení jsou vystaveny pro případ, že chcete vytvořit vlastní typ zobrazení.
Příklad: 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
Získá kopii podkladového zobrazení.
// 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() &&;
Parametry
Žádná
Vrácená hodnota
Podkladové zobrazení.
begin
Získejte iterátor na první prvek v objektu 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>;
Parametry
Žádná
Vrácená hodnota
Iterátor ukazující na první prvek v objektu drop_view.
end
Získání sentinelu na konci drop_view
constexpr auto end() requires (!Simple_view<V>);
constexpr auto end() const requires ranges::range<const V>;
Parametry
Žádná
Vrácená hodnota
Sentinel, který následuje za posledním prvkem v :drop_view
size
Získá počet prvků v souboru drop_view.
constexpr auto size() requires ranges::sized_range<V>;
constexpr auto size() const requires ranges::sized_range<const V>;
Parametry
Žádná
Vrácená hodnota
Počet prvků v souboru drop_view.
Poznámky
Základní rozsah musí splňovat sized_range.
Viz také
<ranges>
drop adaptér rozsahu
take_while()
take_while_view
Zobrazit třídy