Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir aralığın ilk N öğelerini dışlayan bir görünüm oluşturun.
Sözdizimi
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>;
Şablon parametreleri
V
Temel alınan görünümün türü.
Özellikleri görüntüleme
Aşağıdaki girdilerin açıklaması için bkz . Sınıf özelliklerini görüntüleme
| Karakteristik | Açıklama |
|---|---|
| Aralık bağdaştırıcısı | views::drop |
| Temel alınan aralık | Veya üzerini karşılaması output_range gerekir |
| Öğe türü | Temel alınan aralıkla aynı |
| Yineleyici kategoriyi görüntüleme | Temel alınan aralıkla aynı |
| Boyutlu | Yalnızca temel alınan aralık karşılanırsa sized_range |
- constyinelenebilir |
Yalnızca temel alınan aralık yinelenebilirse const ve random_access_rangesized_range |
| Ortak aralık | Yalnızca temel alınan aralık bir common_range |
| Ödünç alınan aralık | Yalnızca temel alınan aralık karşılanırsa borrowed_range |
Üyeler
| Üye işlevleri | Açıklama |
|---|---|
| OluşturucularC++20 | oluşturma drop_view. |
base
C++20 |
Temel alınan görünümü alın. |
begin
C++20 |
İlk öğeye bir yineleyici alın. |
end
C++20 |
Görünümün sonunda sentinel'i alın. |
size
C++20 |
Bu görünümdeki öğe sayısını alın. Temel alınan aralığın karşılaması sized_rangegerekir. |
Devralınan view_interface |
Açıklama |
back
C++20 |
Son öğeyi alın. |
data
C++20 |
İlk öğeye bir işaretçi alın. |
empty
C++20 |
öğesinin drop_view boş olup olmadığını test edin. |
front
C++20 |
İlk öğeyi alın. |
operator[]
C++20 |
Öğesini belirtilen konumda alın. |
operator bool
C++20 |
öğesinin drop_view boş olup olmadığını test edin. |
Gereksinimler
Üst bilgi:<ranges> (C++20'den beri)
Ad alanı: std::ranges
Derleyici Seçeneği:/std:c++20 veya üzeri gereklidir.
Oluşturucular
Bir örneğini oluşturma drop_view
template<ranges::view V>
class drop_view : public ranges::view_interface<drop_view<V>>
Şablon parametreleri
V
Temel alınan görünümün türü.
Dönüş değeri
Belirtilen sayıda öğeyi önden hariç tutarak temel aralığın görünümü.
Bırakılacak daha fazla öğe belirtirseniz, temel alınan aralıkta empty_view var olandan daha fazla öğe döndürülür.
Açıklamalar
Oluşturmanın drop_view en iyi yolu, aralık bağdaştırıcısını views::drop kullanmaktır. Aralık bağdaştırıcıları, görünüm sınıfları oluşturmanın amaçlanan yoludur. Kendi özel görünüm türünüzü oluşturmak istemeniz durumunda görünüm türleri kullanıma sunulur.
Örnek: 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
Temel alınan görünümün bir kopyasını alır.
// 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() &&;
Parametreler
Hiçbiri.
Dönüş değeri
Temel alınan görünüm.
begin
içindeki ilk öğeye drop_viewbir yineleyici alın.
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>;
Parametreler
Hiçbiri.
Dönüş değeri
içindeki ilk öğeye drop_viewişaret eden bir yineleyici.
end
Sentinel'i drop_view
constexpr auto end() requires (!Simple_view<V>);
constexpr auto end() const requires ranges::range<const V>;
Parametreler
Hiçbiri.
Dönüş değeri
içindeki son öğeyi drop_viewizleyen sentinel:
size
içindeki drop_viewöğe sayısını alır.
constexpr auto size() requires ranges::sized_range<V>;
constexpr auto size() const requires ranges::sized_range<const V>;
Parametreler
Hiçbiri.
Dönüş değeri
içindeki drop_viewöğe sayısı.
Açıklamalar
Temel alınan aralığın karşılaması sized_rangegerekir.
Ayrıca bkz.
<ranges>
drop aralık bağdaştırıcısı
take_while()
take_while_view
Sınıfları görüntüleme