Я знаю, что этот вопрос уже давно задан, но у меня есть конкретный пример, о котором я думал. В настоящее время у меня есть кусок кода, Сорта псевдокода, хотя, потому что я не на моем рабочем терминале:Перемещение каталога с использованием петель
void setTree(string dir) {
add dir to dirlist
create dir object //contains list of subdirs and files
for subdir in dir.subs do
setTree(subdir)
end
}
Возможно ли это сделать с только для петель, потому что вы не можете знать во время компиляции сколько подкаталогов будет во время компиляции. Псевдокод в порядке или какое-то объяснение или алгоритм. Мне действительно ничего не нужно, потому что мне нравится мое рекурсивное решение, но я действительно хотел бы узнать, возможно ли это. Как и теория, стоящая за ней.
Я бы реализовать что-то вроде [это] (http://stackoverflow.com/a/12569958/179910). Ответ Локи Астари * хорошо * стоит прочитать. –
Непосредственно под определением Boost.Filesystem ['recursive_directory_iterator'] (http://www.boost.org/doc/libs/1_54_0/libs/filesystem/doc/reference.html#Class-recursive_directory_iterator) в своей документации, там является упрощенным объяснением того, как это работает. –