C ++ 17 разложение пути к файлу на имена папок - PullRequest
0 голосов
/ 12 октября 2018

Я просматривал спецификацию файловой системы c ++ 17 , пытаясь найти функцию для получения вектора из разложения всех имен папок по заданному пути, но не смог найти ни одного.Какова причина?Мне кажется, что это базовая функциональность.

1 Ответ

0 голосов
/ 12 октября 2018

Потому что это не должно быть в файловой системе.fileystem :: path просто предоставляет итераторы, а конструктор вектора делает все остальное:

#include <vector>
#include <filesystem>
#include <iostream>

using path = std::experimental::filesystem::path;
path p("C:/RootDir/SubDirectory/SubSubDirectory/SomeFile.txt");

int main() {
    std::vector<path::iterator::value_type> v(p.begin(), p.end());

    for( auto itr = v.begin(); itr != v.end(); ++itr)
    {
        std::cout << *itr << std::endl;
    }
}
...