Namespaces
Variants

std::ranges::common_view<V>::base

Von de.cppreference.net
 
 
Bereichsbibliothek
Bereichsadapter
 
 
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 Ansicht zurück.

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

Parameter

(keine)

Rückgabewert

Eine Kopie der zugrunde liegenden Ansicht.

Beispiel

#include <iostream>
#include <ranges>
#include <string>
int main()
{
    std::string str { "C++20" };
    auto view = std::views::common(str);
    std::string copy_of_str = view.base();
    std::cout << "copy of str: [" << copy_of_str << "]\n";
    std::cout << "view.base(): [" << view.base() << "]\n";
    std::string move_str = std::move(view.base());
    std::cout << "moved str:   [" << move_str << "]\n";
    std::cout << "view.base(): [" << view.base() << "]\n"; // unspecified
}

Mögliche Ausgabe:

copy of str: [C++20]
view.base(): [C++20]
moved str:   [C++20]
view.base(): []