Namespaces
Variants

std::filesystem::path:: begin, std::filesystem::path:: end

From cppreference.net
iterator begin ( ) const ;
(1) (depuis C++17)
iterator end ( ) const ;
(2) (depuis C++17)
1) Retourne un itérateur vers le premier élément du chemin. Si le chemin est vide, l'itérateur retourné est égal à end() .
2) Retourne un itérateur situé après le dernier élément du chemin. La déréférence de cet itérateur est un comportement indéfini.

La séquence désignée par cette paire d'itérateurs se compose des éléments suivants :

  1. root-name (si présent).
  2. root-directory (si présent).
  3. Séquence de file-name s, en omettant tous les séparateurs de répertoire.
  4. S'il y a un séparateur de répertoire après le dernier file-name dans le chemin, le dernier élément avant l'itérateur de fin est un élément vide.

Table des matières

Paramètres

(aucun)

Valeur de retour

1) Itérateur vers le premier élément du chemin.
2) Itérateur pointant après la fin du chemin

Exceptions

Peut lever des exceptions définies par l'implémentation.

Exemple

#include <filesystem>
#include <iostream>
namespace fs = std::filesystem;
int main()
{
    const fs::path p = 
#   ifdef _WIN32
        "C:\\users\\abcdef\\AppData\\Local\\Temp\\";
#   else
        "/home/user/.config/Cppcheck/Cppcheck-GUI.conf";
#   endif
    std::cout << "Examen du chemin " << p << " via les itérateurs donne\n";
    for (auto it = p.begin(); it != p.end(); ++it)
        std::cout << *it << " │ ";
    std::cout << '\n';
}

Sortie possible :

--- Windows ---
Examen du chemin "C:\users\abcdef\AppData\Local\Temp\" via les itérateurs donne
"C:" │ "/" │ "users" │ "abcdef" │ "AppData" │ "Local" │ "Temp" │ "" │
--- UNIX ---
Examen du chemin "/home/user/.config/Cppcheck/Cppcheck-GUI.conf" via les itérateurs donne
"/" │ "home" │ "user" │ ".config" │ "Cppcheck" │ "Cppcheck-GUI.conf" │