Namensräume
Varianten
Aktionen

std::filesystem::directory_entry::directory_entry

Von cppreference.com
 
 
 
 
directory_entry() noexcept = default;
(1) (seit C++17)
directory_entry( const directory_entry& ) = default;
(2) (seit C++17)
directory_entry( directory_entry&& ) noexcept = default;
(3) (seit C++17)
explicit directory_entry( const std::filesystem::path& p );
(4) (seit C++17)
directory_entry( const std::filesystem::path& p, std::error_code& ec );
(5) (seit C++17)

Konstruiert ein neues directory_entry Objekt.

1) Standardkonstruktor.
2) Standardmäßiger Copy-Konstruktor.
3) Standardmäßiger Move-Konstruktor.
4,5) Initialisiert den Verzeichniseintrag mit dem Pfad p und ruft refresh auf, um die zwischengespeicherten Attribute zu aktualisieren. Wenn ein Fehler auftritt, behält die nicht-werfende Überladung einen standardmäßig konstruierten Pfad im directory_entry.

[edit] Parameter

p - Pfad zum Dateisystemobjekt, auf das sich der Verzeichniseintrag beziehen wird
ec - Ausgabeparameter für die Fehlerberichterstattung in der nicht auslösenden Überladung

[edit] Ausnahmen

Jede Überladung, die nicht als noexcept markiert ist, kann std::bad_alloc auslösen, wenn die Speicherzuweisung fehlschlägt.

1-4) Wirft std::filesystem::filesystem_error bei zugrunde liegenden Betriebssystem-API-Fehlern, konstruiert mit p als erstem Pfadargument und dem Betriebssystem-Fehlercode als Fehlercodeargument.
5) Setzt einen std::error_code&-Parameter auf den Betriebssystem-API-Fehlercode, wenn ein Betriebssystem-API-Aufruf fehlschlägt, und führt ec.clear() aus, wenn keine Fehler auftreten.

[edit] Beispiel