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)
パスの最後の要素の1つ先を指すイテレータを返します。このイテレータをデリファレンスする動作は未定義です。
このイテレータのペアによって示されるシーケンスは以下の要素で構成されます:
- root-name (存在する場合)。
- root-directory (存在する場合)。
- ディレクトリ区切りを省略した file-name のシーケンス。
- パス内の最後の 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" │