Namespaces
Variants

std::ranges::split_view<V, Pattern>::base

Von de.cppreference.net
 
 
Bereichsbibliothek
Bereichsadaptoren
 
 
constexpr V base() const& requires std::copy_constructible<V>;
(1) (seit C++20)
constexpr V base() &&;
(2) (seit C++20)

Gibt eine Kopie der zugrunde liegenden View base_zurück.

1) Kopierkonstruiert das Ergebnis aus der zugrunde liegenden View.
2) Verschiebungskonstruiert das Ergebnis aus der zugrunde liegenden View.

Rückgabewert

1) Eine Kopie der zugrunde liegenden Ansicht.
2) Eine Ansicht, die aus der zugrunde liegenden Ansicht move-konstruiert wurde.

Beispiel

#include <iomanip>
#include <iostream>
#include <ranges>
#include <string_view>
int main()
{
    constexpr std::string_view keywords{"this throw true try typedef typeid"};
    std::ranges::split_view split_view{keywords, ' '};
    std::cout << "base() = " << std::quoted(split_view.base()) << "\n"
                 "substrings: ";
    for (auto split : split_view)
        std::cout << std::quoted(std::string_view{split}) << ' ';
    std::cout << '\n';
}

Ausgabe:

base() = "this throw true try typedef typeid"
substrings: "this" "throw" "true" "try" "typedef" "typeid"

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 3590 C++20 die const & Überladung erforderte zusätzlich Gültigkeit der Copy-Zuweisung Einschränkungen gelockert

Siehe auch

gibt eine Kopie der zugrundeliegenden (adaptierten) Ansicht zurück
(öffentliche Elementfunktion von std::ranges::lazy_split_view<V,Pattern> )