169 похожих чатов

Всем привет. Чем может быть хорош оператор yield? Я что

то не понимаю профита что он дает

13 ответов

16 просмотров

Он полезен тогда когда тебе нужно собрать енумрбл по какой то логике последовательно, возможно из разных источников

простенькие state machine удобно писать. промежуточные результаты (типа суммирования) удобно внутри таких enumerable хранить.

Евгений-Сотников Автор вопроса
Andrew
Он полезен тогда когда тебе нужно собрать енумрбл ...

А зачем он если я сам могу собрать колекцию и вернуть ее как результат безо всяких yield

Andrii Kurdiumov
ты памяти не тратишь

Кроме того оно лениво

Пользователь 64393
практически вроде тоже

не бейте где в синтаксисе ошибся class Fibonacci : IEnumerator<int> { private int alpha = 0; private int beta = 1; public bool MoveNext { var memory = beta; beta = alpha + beta; alpha = memory; return true; } public int Current { get => beta; } } будет сколько угодно новые вещи выплёвывать

Etki
не бейте где в синтаксисе ошибся class Fibonacci ...

всюди ) class Fibonacci : IEnumerable<int>, IEnumerator<int> { private int alpha = 0; private int beta = 1; bool IEnumerator.MoveNext() { var memory = beta; beta = alpha + beta; alpha = memory; return true; } public void Reset() { alpha = 0; beta = 1; } public int Current => alpha; object IEnumerator.Current => Current; public IEnumerator<int> GetEnumerator() => this; IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); public void Dispose() { } }

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта