Результаты поиска по запросу "iterator"

1 ответ

Отличное объяснение! Спасибо, что объяснили это мне.

ершаю сегмент кода, который перечисляет файлы в каталоге. У меня нет проблем с перечислением файлов в каталоге, но по какой-то причине я могу заставить метод isDot () работать, чтобы убедиться, что файл не является "." или же ".." . Следующее ...

7 ответов

Я не уверен, что нужно возвращать адрес вещи, указанной итератором. Все, что вам нужно, это сам указатель. Вы увидите, что сам класс итераторов STL реализует использование _Ptr для этой цели. Итак, просто сделайте:

я есть вектор myObjects в глобальной области видимости. У меня есть метод, который используетstd::vector<myObject>::const_iterator чтобы пройти вектор и сделать некоторые сравнения, чтобы найти конкретный элемент. Как только я нашел требуемый ...

5 ответов

@Yakk Я думаю, что gcc уже делает недействительными итераторы в таких ситуациях.

ы правила аннулирования итераторов для контейнеров C ++? Желательно в формате краткого списка. (Примечание: это означает, чтоFAQ по C ++ для переполнения стека [https://stackoverflow.com/questions/tagged/c++-faq], Если вы хотите ...

ТОП публикаций

1 ответ

Чтобы избежать ошибки одновременного изменения, которая может возникнуть при вставке, вы также можете создать временную копию набора, вместо этого выполнить итерацию по копии и изменить оригинал.

ЦИЯ:У меня есть TreeSet пользовательских объектов, и я также использовал собственный компаратор. Я создал итератор для использования в этом TreeSet. TreeSet<Custom> ts=new TreeSet<Custom>(); Iterator<Custom> ...

1 ответ

Надеюсь, что это отвечает на ваш запрос или сарказм, что бы это ни было.

/ должен ли я наследовать от итератора STL для реализации своего собственного класса итератора? Если нет, то почему нет?

3 ответа

Тип объекта Python range () и zip ()

Я понимаю, как функции, какrange() а такжеzip() можно использовать в цикле for. Однако я ожидалrange() вывести список - очень похожеseq в оболочке unix. Если я запускаю следующий код: a=range(10) print(a)Выходrange(10)предполагая, что это не ...

1 ответ

Тот факт, что вы удаляете вещи, означает, что позиция пропускается каждый раз, когда вы выполняете удаление.

ющий код: a = list(range(10)) remove = False for b in a: if remove: a.remove(b) remove = not remove print(a)Выходы[0, 2, 3, 5, 6, 8, 9], вместо[0, 2, 4, 6, 8] при использовании Python 3.2. Почему он выводит эти конкретные значения?Почему не ...

0 ответов

Странное поведение итератора Python [дубликат]

На этот вопрос уже есть ответ здесь: Локальные переменные во вложенных функциях [/questions/12423614/local-variables-in-nested-functions] 3 ответаЯ играл с генераторами Python иitertools модуль и попытался сделать бесконечную версию сита ...

5 ответов

, но, похоже, вы уже получили то, что вам нужно :-)

у меня есть итерация, содержащая строки, есть ли простой способ превратить его в поток? Я хочу сделать что-то вроде этого: def make_file(): yield "hello\n" yield "world\n" output = tarfile.TarFile(…) stream = iterable_to_stream(make_file()) ...

2 ответа

 (который, в конце концов, упорядочен), проблема в том, что это займет больше, чем постоянная сложность

вык писать такие циклы: for (std::size_t index = 0; index < foo.size(); index++) { // Do stuff with foo[index]. }Но когда я вижу циклы итераторов в чужом коде, они выглядят так: for (Foo::Iterator iterator = foo.begin(); iterator != foo.end(); ...