LINUX.ORG.RU

[boost]directory_iterator

 


0

1

Доброго времени суток! Помогите разобраться с boost::filesystem::directory_iterator. Как пробежать в цикле по всем значениям итератора? Пробовал сделать так:

directory_iterator it(p);
directory_iterator end_it();
while (it != end_it) {
	do_something(*it);
	it++;
}
Компилятор указывает на отсутствие у directory_iterator оператора !=, хотя, поискав с помощью CodeSearch примеры использования directory_iterator, я нашел такой код:
    if (boost::filesystem::exists(path)) {
      boost::filesystem::directory_iterator dir_iter(path), end_iter;

      for ( ; dir_iter != end_iter; ++dir_iter) {
        _return.push_back(dir_iter->filename());
      }
    }
Почему у них это работает, а у меня нет?

★★★★★
directory_iterator end_it();

Потому, что здесь ты объявил функцию end_iter, возвращающую directory_iterator.

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от DELIRIUM

O shi~! А меня что-то заклинило, что такая конструкция должна вызывать конструктор по умолчанию.

hippi90 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.