From C++17 onward, the <filesystem>
header, and range-for
, you can simply do this:
#include <filesystem>
using recursive_directory_iterator = std::filesystem::recursive_directory_iterator;
...
for (const auto& dirEntry : recursive_directory_iterator(myPath))
std::cout << dirEntry << std::endl;
As of C++17, std::filesystem
is part of the standard library and can be found in the <filesystem>
header (no longer “experimental”).