A C++ program which list all files and subdirectories recursively