std::filesystem:: current_path
From de.cppreference.net
<
cpp
|
filesystem
|
Definiert im Header
<filesystem>
|
||
|
path current_path
(
)
;
|
(1) | (seit C++17) |
|
path current_path
(
std::
error_code
&
ec
)
;
|
(2) | (seit C++17) |
|
void
current_path
(
const
std::
filesystem
::
path
&
p
)
;
|
(3) | (seit C++17) |
|
void
current_path
(
const
std::
filesystem
::
path
&
p,
std:: error_code & ec ) noexcept ; |
(4) | (seit C++17) |
Gibt den aktuellen Pfad zurück oder ändert ihn.
1,2)
Gibt den absoluten Pfad des aktuellen Arbeitsverzeichnisses zurück, ermittelt wie (im nativen Format) durch POSIX
getcwd
.
(2)
gibt
path
(
)
zurück, falls ein Fehler auftritt.
Inhaltsverzeichnis |
Parameter
| p | - | Pfad, in den das aktuelle Arbeitsverzeichnis geändert werden soll |
| ec | - | Out-Parameter für Fehlerberichterstattung in den nicht-werfenden Überladungen |
Rückgabewert
1,2)
Gibt das aktuelle Arbeitsverzeichnis zurück.
3,4)
(keine)
Ausnahmen
Jede Überladung, die nicht als
noexcept
gekennzeichnet ist, kann
std::bad_alloc
auslösen, wenn die Speicherallokation fehlschlägt.
1)
Wirft
std::filesystem::filesystem_error
bei zugrundeliegenden OS-API-Fehlern, konstruiert mit dem OS-Fehlercode als Fehlercode-Argument.
2)
Setzt einen
std::
error_code
&
Parameter auf den OS API Fehlercode, wenn ein OS API-Aufruf fehlschlägt, und führt
ec.
clear
(
)
aus, wenn keine Fehler auftreten.
3)
Wirft
std::filesystem::filesystem_error
bei zugrundeliegenden OS-API-Fehlern, konstruiert mit
p
als erstem Pfadargument und dem OS-Fehlercode als Fehlercodeargument.
4)
Setzt einen
std::
error_code
&
Parameter auf den OS-API-Fehlercode, wenn ein OS-API-Aufruf fehlschlägt, und führt
ec.
clear
(
)
aus, falls keine Fehler auftreten.
Hinweise
Das aktuelle Arbeitsverzeichnis ist das Verzeichnis, das mit dem Prozess verknüpft ist und als Ausgangspunkt für die Pfadnamensauflösung relativer Pfade verwendet wird.
Der aktuelle Pfad, wie er von vielen Betriebssystemen zurückgegeben wird, ist eine gefährliche globale Variable. Er kann unerwartet durch Drittanbieter- oder Systembibliotheksfunktionen oder durch einen anderen Thread geändert werden.
Beispiel
Diesen Code ausführen
Mögliche Ausgabe:
Current path is "D:/local/ConsoleApplication1" Current path is "E:/Temp"
Siehe auch
|
(C++17)
|
gibt ein Verzeichnis zurück, das für temporäre Dateien geeignet ist
(Funktion) |