std::filesystem::directory_iterator:: directory_iterator
|
directory_iterator
(
)
noexcept
;
|
(1) | (seit C++17) |
|
explicit
directory_iterator
(
const
std::
filesystem
::
path
&
p
)
;
|
(2) | (seit C++17) |
|
directory_iterator
(
const
std::
filesystem
::
path
&
p,
std:: filesystem :: directory_options options ) ; |
(3) | (seit C++17) |
|
directory_iterator
(
const
std::
filesystem
::
path
&
p,
std::
error_code
&
ec
)
;
|
(4) | (seit C++17) |
|
directory_iterator
(
const
std::
filesystem
::
path
&
p,
std::
filesystem
::
directory_options
options,
|
(5) | (seit C++17) |
|
directory_iterator
(
const
directory_iterator
&
other
)
=
default
;
|
(6) | (seit C++17) |
|
directory_iterator
(
directory_iterator
&&
other
)
=
default
;
|
(7) | (seit C++17) |
Konstruiert einen neuen Verzeichnis-Iterator.
p
identifizierten Verzeichnisses verweist. Wenn
p
auf eine nicht existierende Datei oder kein Verzeichnis verweist, wird
std::filesystem::filesystem_error
geworfen.
options
gesetzt ist und beim Konstruieren ein Berechtigungsfehler auftritt, wird der End-Iterator konstruiert und kein Fehler gemeldet.
p
identifizierten Verzeichnisses verweist. Wenn
p
auf eine nicht existierende Datei oder kein Verzeichnis verweist, wird der End-Iterator zurückgegeben und
ec
gesetzt.
options
gesetzt ist und beim Konstruieren ein Berechtigungsfehler auftritt, wird der End-Iterator konstruiert und kein Fehler gemeldet.
Inhaltsverzeichnis |
Parameter
| p | - | Pfad zum Dateisystemobjekt, auf das das Verzeichnisiterator referenzieren wird |
| ec | - | Out-Parameter für Fehlerberichterstattung in den nicht-werfenden Überladungen |
| options | - | die Menge der BitmaskType Optionen, die das Verhalten des Verzeichnisiterators steuern |
| other | - | ein weiterer Verzeichnisiterator, der als Quelle zur Initialisierung des Verzeichnisiterators verwendet wird |
Exceptions
Jede Überladung, die nicht als
noexcept
gekennzeichnet ist, kann
std::bad_alloc
auslösen, wenn die Speicherzuweisung fehlschlägt.
Hinweise
Um über das aktuelle Verzeichnis zu iterieren, konstruieren Sie den Iterator als directory_iterator ( "." ) anstatt von directory_iterator ( "" ) .
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
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 3013 | C++17 |
error_code
Überladung als noexcept markiert, kann aber Speicher allozieren
|
noexcept entfernt |