Namespaces
Variants

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

From cppreference.net
iterator begin ( ) const ;
(1) (filesystem TS)
iterator end ( ) const ;
(2) (filesystem TS)
1) パスの最初の要素へのイテレータを返します。パスが空の場合、返されるイテレータは end() と等しくなります。
2) パスの最後の要素の1つ先を指すイテレータを返します。このイテレータをデリファレンスする動作は未定義です。

このイテレータのペアによって示されるシーケンスは以下の要素で構成されます:

1) root-name (存在する場合)。
2) root-directory (存在する場合)。
3) file-name のシーケンス。ディレクトリ区切り文字はすべて省略されます。
4) パスの最後の file-name の後にディレクトリ区切り文字がある場合、終端イテレータの前の最後の要素は架空の dot ファイル名となります。

目次

翻訳のポイント: - 「Contents」→「目次」に翻訳 - C++関連の専門用語(Parameters, Return value, Exceptions, Example)は原文のまま保持 - HTMLタグ、属性、クラス名は一切変更せず - 番号部分はそのまま保持 - フォーマットと構造は完全に維持

パラメータ

(なし)

戻り値

1) パスの最初の要素へのイテレータ。
2) パスの終端を超えたイテレータ。

例外

実装定義の例外をスローする可能性があります。

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    fs::path p = "C:\\users\\abcdef\\AppData\\Local\\Temp\\";
    std::cout << "Examining the path " << p << " through iterators gives\n";
    for (auto& e : p)
        std::cout << e << '\n';
}

出力:

Examining the path "C:\users\abcdef\AppData\Local\Temp\" through iterators gives
"C:"
"/"
"users"
"abcdef"
"AppData"
"Local"
"Temp"
"."