drop_view
Klasse (C++-Standardbibliothek)
Erstellen Sie eine Ansicht, die die ersten N-Elemente eines Bereichs ausschließt.
Syntax
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>;
Vorlagenparameter
V
Der Typ der zugrunde liegenden Ansicht.
Eigenschaften der Ansicht
Eine Beschreibung der folgenden Einträge finden Sie unter Anzeigen von Klassenmerkmalen
Merkmal | Beschreibung |
---|---|
Range Adaptor | views::drop |
Zugrunde liegender Bereich | Muss erfüllen output_range oder höher |
Elementtyp | Identisch mit dem zugrunde liegenden Bereich |
Iteratorkategorie anzeigen | Identisch mit dem zugrunde liegenden Bereich |
Größer eingestellt | Nur, wenn der zugrunde liegende Bereich erfüllt ist sized_range |
Ist const -iterierbar |
Nur, wenn der zugrunde liegende Bereich iterierbar ist const und erfüllt random_access_range und sized_range |
Allgemeiner Bereich | Nur, wenn der zugrunde liegende Bereich ein common_range |
Geliehener Bereich | Nur, wenn der zugrunde liegende Bereich erfüllt ist borrowed_range |
Member
Memberfunktionen | Beschreibung |
---|---|
Konstruktoren C++20 | Erstellen Sie ein drop_view . |
base C++20 |
Rufen Sie die zugrunde liegende Ansicht ab. |
begin C++20 |
Rufen Sie einen Iterator zum ersten Element ab. |
end C++20 |
Rufen Sie den Sentinel am Ende der Ansicht ab. |
size C++20 |
Rufen Sie die Anzahl der Elemente in dieser Ansicht ab. Der zugrunde liegende Bereich muss erfüllt sein sized_range . |
Geerbt von view_interface |
Beschreibung |
back C++20 |
Rufen Sie das letzte Element ab. |
data C++20 |
Rufen Sie einen Zeiger auf das erste Element ab. |
empty C++20 |
Testen Sie, ob die Datei drop_view leer ist. |
front C++20 |
Rufen Sie das erste Element ab. |
operator[] C++20 |
Rufen Sie das Element an der angegebenen Position ab. |
operator bool C++20 |
Testen Sie, ob die drop_view Datei nicht leer ist. |
Anforderungen
Header: <ranges>
(seit C++20)
Namespace:std::ranges
Compileroption: /std:c++20
oder höher ist erforderlich.
Konstruktoren
Erstellen einer Instanz einer drop_view
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>
Vorlagenparameter
V
Der Typ der zugrunde liegenden Ansicht.
Rückgabewert
Eine Ansicht des zugrunde liegenden Bereichs, mit Ausnahme der angegebenen Anzahl von Elementen von vorne.
Wenn Sie mehr Elemente angeben, die im zugrunde liegenden Bereich abzulegen sind, wird ein empty_view
Wert zurückgegeben.
Hinweise
Die beste Methode zum Erstellen eines Steuerelements drop_view
ist die Verwendung des views::drop
Bereichsadapters. Bereichsadapter sind die beabsichtigte Möglichkeit zum Erstellen von Ansichtsklassen. Die Ansichtstypen werden für den Fall verfügbar gemacht, dass Sie ihren eigenen benutzerdefinierten Ansichtstyp erstellen möchten.
Beispiel: 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
Ruft eine Kopie der zugrunde liegenden Ansicht ab.
// 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() &&;
Parameter
Keine
Rückgabewert
Die zugrunde liegende Ansicht.
begin
Rufen Sie einen Iterator zum ersten Element in der 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>;
Parameter
Keine
Rückgabewert
Ein Iterator, der auf das erste Element in der drop_view
.
end
Abrufen des Sentinels am Ende des drop_view
constexpr auto end() requires (!Simple_view<V>);
constexpr auto end() const requires ranges::range<const V>;
Parameter
Keine
Rückgabewert
Der Sentinel, der auf das letzte Element in der drop_view
:
size
Ruft die Anzahl der Elemente in der drop_view
.
constexpr auto size() requires ranges::sized_range<V>;
constexpr auto size() const requires ranges::sized_range<const V>;
Parameter
Keine
Rückgabewert
Die Anzahl der Elemente im drop_view
.
Hinweise
Der zugrunde liegende Bereich muss erfüllt sein sized_range
.
Siehe auch
<ranges>
drop
Range Adaptor
take_while()
take_while_view
Anzeigen von Klassen