Вопросы с тегом «iterator»

197
Зачем использовать функции, не являющиеся членами начала и конца, в C ++ 11?

Каждый стандартный контейнер имеет beginи endспособ возвращения итераторов для этого контейнера. Тем не менее, C ++ 11, по- видимому , введенные свободные функции называются std::beginи std::endкоторые называют beginи endчлены функции. Итак, вместо того, чтобы писать auto i = v.begin(); auto e =...

178
Почему итератор Java не является итерируемым?

Почему Iteratorинтерфейс не расширяется Iterable? iterator()Метод может просто вернуться this. Это специально или просто недосмотр разработчиков Java? Было бы удобно иметь возможность использовать цикл for-each с итераторами: for(Object o : someContainer.listSomeObjects()) { .... } где...

157
Что означает итератор-> second?

В C ++, какой тип std::map<>::iterator? Мы знаем, что объект itтипа std::map<A,B>::iteratorимеет перегруженную версию, operator ->которая возвращает a std::pair<A,B>*, и что std::pair<>элемент a имеет firstи second. Но чему соответствуют эти два члена и почему мы должны...

147
Поведение итератора списка Python и следующий (итератор)

Рассматривать: >>> lst = iter([1,2,3]) >>> next(lst) 1 >>> next(lst) 2 Таким образом, продвижение итератора, как и ожидалось, обрабатывается путем изменения этого же объекта. В таком случае я бы ожидал: a = iter(list(range(10))) for i in a: print(i) next(a) пропустить...

147
Удаление элементов из std :: set во время итерации

Мне нужно пройти через набор и удалить элементы, которые соответствуют заранее определенным критериям. Это тестовый код, который я написал: #include <set> #include <algorithm> void printElement(int value) { std::cout << value << " "; } int main() { int initNum[] = { 0, 1, 2,...

144
Понимание Spliterator, Collector и Stream в Java 8

У меня возникают проблемы понимания Streamинтерфейса в Java 8, особенно там , где он должен делать с Spliteratorи Collectorинтерфейсов. Моя проблема в том, что я пока просто не могу понять Spliteratorи Collectorинтерфейсы, и в результате Streamинтерфейс для меня все еще несколько неясен. Что такое...

142
Перебрать ключи объектов в node.js

Начиная с Javascript 1.7 существует объект Iterator , который позволяет это: var a={a:1,b:2,c:3}; var it=Iterator(a); function iterate(){ try { console.log(it.next()); setTimeout(iterate,1000); }catch (err if err instanceof StopIteration) { console.log("End of record.\n"); } catch (err) {...

141
Создание собственных итераторов

Я пытаюсь изучить C ++, так что простите меня, если этот вопрос демонстрирует отсутствие базовых знаний, понимаете, факт в том, что мне не хватает базовых знаний. Мне нужна помощь в разработке итератора для созданного мной класса. У меня есть класс «Форма», в котором есть контейнер точек. У меня...

140
Итерация по вектору C ++ с использованием цикла for

Я новичок в языке C ++. Я начал использовать векторы и заметил, что во всем коде, который я вижу, для итерации по вектору через индексы, первый параметр forцикла всегда основан на векторе. В Java я мог бы сделать что-то вроде этого с ArrayList: for(int i=0; i < vector.size(); i++){...

140
Разница между итератором и листитератором?

Iterator ite = Set.iterator(); Iterator ite = List.iterator(); ListIterator listite = List.listIterator(); Мы можем использовать, Iteratorчтобы пройти через Seta, a Listили a Map. Но ListIteratorможет использоваться только для прохождения List, а не для прохождения Set. Зачем? Я знаю, что основное...

135
Итерация по карте машинописного текста

Я пытаюсь перебрать карту машинописного текста, но продолжаю получать ошибки и пока не могу найти решения для такой тривиальной проблемы. Мой код: myMap : Map<string, boolean>; for(let key of myMap.keys()) { console.log(key); } И я получаю ошибку: Тип «IterableIteratorShim <[string,...

133
Что произойдет, если вы вызовете erase () для элемента карты во время итерации от начала до конца?

В следующем коде я перебираю карту и проверяю, нужно ли удалить элемент. Безопасно ли стереть элемент и продолжить итерацию, или мне нужно собрать ключи в другом контейнере и выполнить второй цикл для вызова erase ()? map<string, SerialdMsg::SerialFunction_t>::iterator pm_it; for (pm_it =...

127
Что такое Ruby-способ перебора сразу двух массивов

Скорее синтаксическое любопытство, чем проблема, которую нужно решить ... У меня есть два массива одинаковой длины, и я хочу перебрать их сразу - например, чтобы вывести оба их значения по определенному индексу. @budget = [ 100, 150, 25, 105 ] @actual = [ 120, 100, 50, 100 ] Я знаю, что могу...