std::filesystem::path:: begin, std::filesystem::path:: end
From cppreference.net
<
cpp
|
filesystem
|
path
C++
std::filesystem::path
| Member types | ||||||||||||||||||||||||||
| Member constants | ||||||||||||||||||||||||||
| Member functions | ||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| Path decomposition | ||||||||||||||||||||||||||
| Non-member functions | ||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| Helper classes | ||||||||||||||||||||||||||
|
iterator begin
(
)
const
;
|
(1) | (начиная с C++17) |
|
iterator end
(
)
const
;
|
(2) | (начиная с C++17) |
1)
Возвращает итератор на первый элемент пути. Если путь пуст, возвращаемый итератор равен
end()
.
2)
Возвращает итератор, указывающий за последний элемент пути. Разыменование этого итератора приводит к неопределенному поведению.
Последовательность, обозначенная этой парой итераторов, состоит из следующего:
- root-name (если есть).
- root-directory (если есть).
- Последовательность file-name s, пропуская любые разделители директорий.
- Если после последнего file-name в пути есть разделитель директорий, последний элемент перед конечным итератором является пустым элементом.
Содержание |
Параметры
(нет)
Возвращаемое значение
1)
Итератор на первый элемент пути.
2)
Итератор за концом пути
Исключения
Может генерировать исключения, определяемые реализацией.
Пример
Запустить этот код
#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 << "Examining the path " << p << " through iterators gives\n"; for (auto it = p.begin(); it != p.end(); ++it) std::cout << *it << " │ "; std::cout << '\n'; }
Возможный вывод:
--- Windows --- Examining the path "C:\users\abcdef\AppData\Local\Temp\" through iterators gives "C:" │ "/" │ "users" │ "abcdef" │ "AppData" │ "Local" │ "Temp" │ "" │ --- UNIX --- Examining the path "/home/user/.config/Cppcheck/Cppcheck-GUI.conf" through iterators gives "/" │ "home" │ "user" │ ".config" │ "Cppcheck" │ "Cppcheck-GUI.conf" │