Namensräume
Varianten
Aktionen

std::experimental::filesystem::recursive_directory_iterator::operator++, inkrementieren

Von cppreference.com
 
 
 
 
 
recursive_directory_iterator& operator++();
(Dateisystem-TS)
recursive_directory_iterator& increment( error_code& ec );
(Dateisystem-TS)

Inkrementiert den Iterator zum nächsten Eintrag.

Wenn keine weiteren Einträge mehr im aktuell durchlaufenen Verzeichnis vorhanden sind, wird die Iteration im übergeordneten Verzeichnis fortgesetzt. Dieser Vorgang wird wiederholt, wenn das übergeordnete Verzeichnis keine Geschworeneinträge mehr hat, die durchlaufen werden können. Wenn die Wurzel der Verzeichnishierarchie erreicht ist, die rekursiv durchlaufen wurde (es gibt keine Kandidateneinträge bei depth() = 0)), wird *this auf einen End-Iterator gesetzt.

Andernfalls, wenn *this sich auf ein Verzeichnis bezieht, wird in dieses iteriert, wenn die folgenden Bedingungen erfüllt sind:

  • disable_recursion_pending() wurde vor dieser Inkrementierung nicht aufgerufen, d.h. recursion_pending() = true.
  • Das Verzeichnis ist kein Symlink oder das Folgen von Symlinks ist aktiviert, d.h.
!is_symlink(this->symlink_status()) ||
    (options() & directory_options::follow_directory_symlink) != 0)
.

[bearbeiten] Parameter

ec - Fehlercode, in dem der Fehlerstatus gespeichert wird

[bearbeiten] Rückgabewert

*this

[bearbeiten] Ausnahmen

1) filesystem_error, wenn ein Fehler auftritt. Der Fehlercode wird auf einen geeigneten Fehlercode für den aufgetretenen Fehler gesetzt.
2)
noexcept-Spezifikation:  
noexcept