std::filesystem::operator/
Von cppreference.com
< cpp | filesystem | path
friend path operator/( const path& lhs, const path& rhs );
(seit C++17)
Verkettet zwei Pfadkomponenten unter Verwendung des bevorzugten Verzeichnistrennzeichens, falls angemessen (siehe operator/= für Details).
Gibt effektiv path(lhs) /= rhs zurück.
Diese Funktion ist für die gewöhnliche unqualifizierte oder qualifizierte Suche nicht sichtbar und kann nur durch argumentabhängige Suche gefunden werden, wenn std::filesystem::path eine assoziierte Klasse der Argumente ist. Dies verhindert unerwünschte Konvertierungen bei Vorhandensein einer using-directive von using namespace std::filesystem;.
Inhalt
[bearbeiten] Parameter
lhs, rhs
-
zu verkettende Pfade
[bearbeiten] Rückgabewert
Das Ergebnis der Pfadverkettung.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <filesystem>
#include <iostream>
int main()
{
# if defined(_WIN32) // see e.g. stackoverflow.com/questions/142508
std::filesystem::path p = "C:";
std::cout << "\"C:\" / \"Users\" / \"batman\" == " << p / "Users" / "batman" << '\n';
# else // __linux__ etc
std::filesystem::path p = "/home";
std::cout << "\"/home\" / \"tux\" / \".fonts\" == " << p / "tux" / ".fonts" << '\n';
# endif
}
Mögliche Ausgabe
Windows specific output:
"C:" / "Users" / "batman" == "C:Users\\batman"
Linux etc specific output:
"/home" / "tux" / ".fonts" == "/home/tux/.fonts"
[bearbeiten] Fehlerberichte
Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
DR
angewendet auf
Verhalten wie veröffentlicht
Korrigiertes Verhalten
LWG 3065
C++17
erlaubte die Verkettung von allem, was in Gegenwart einer using-directive in path konvertierbar ist
versteckte Freundfunktion gemacht
[bearbeiten] Siehe auch
hängt Elemente mit einem Verzeichnistrenner an den Pfad an
(public member function)
| friend path operator/( const path& lhs, const path& rhs ); |
(seit C++17) | |
Verkettet zwei Pfadkomponenten unter Verwendung des bevorzugten Verzeichnistrennzeichens, falls angemessen (siehe operator/= für Details).
Gibt effektiv path(lhs) /= rhs zurück.
Diese Funktion ist für die gewöhnliche unqualifizierte oder qualifizierte Suche nicht sichtbar und kann nur durch argumentabhängige Suche gefunden werden, wenn std::filesystem::path eine assoziierte Klasse der Argumente ist. Dies verhindert unerwünschte Konvertierungen bei Vorhandensein einer using-directive von using namespace std::filesystem;.
Inhalt |
[bearbeiten] Parameter
| lhs, rhs | - | zu verkettende Pfade |
[bearbeiten] Rückgabewert
Das Ergebnis der Pfadverkettung.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <filesystem> #include <iostream> int main() { # if defined(_WIN32) // see e.g. stackoverflow.com/questions/142508 std::filesystem::path p = "C:"; std::cout << "\"C:\" / \"Users\" / \"batman\" == " << p / "Users" / "batman" << '\n'; # else // __linux__ etc std::filesystem::path p = "/home"; std::cout << "\"/home\" / \"tux\" / \".fonts\" == " << p / "tux" / ".fonts" << '\n'; # endif }
Mögliche Ausgabe
Windows specific output: "C:" / "Users" / "batman" == "C:Users\\batman" Linux etc specific output: "/home" / "tux" / ".fonts" == "/home/tux/.fonts"
[bearbeiten] Fehlerberichte
Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 3065 | C++17 | erlaubte die Verkettung von allem, was in Gegenwart einer using-directive in path konvertierbar ist |
versteckte Freundfunktion gemacht |
[bearbeiten] Siehe auch
| hängt Elemente mit einem Verzeichnistrenner an den Pfad an (public member function) |