Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Соколиный глаз
C#
233 / 180 / 115
Регистрация: 25.07.2014
Сообщений: 3,938
Записей в блоге: 1
Завершенные тесты: 3
1

Откуда берется перечислитель при использовании yield?

21.10.2018, 14:36. Просмотров 1519. Ответов 5
Метки нет (Все метки)

C#
1
2
3
        static IEnumerable<int> RangeIterator(int start, int count) {
            for (int i = 0; i < count; i++) yield return start + i;
        }
Откуда берется перечислитель при использовании yield?

Добавлено через 5 минут
Перечислитель это либо структура либо класс, в данном случае он будет неявно создан?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2018, 14:36
Ответы с готовыми решениями:

Откуда берется отрицательное число при вычислении процентов ?
Дано buff.Length = 98M Shift изменяется от 0 до buff.Length. Вычисляю в процессе работы программы...

Ucoz Откуда берется sos?
Отправляю сообщение на сайте &quot;Ucoz&quot; в разделе &quot;Гостевая страница&quot;. При отправке появляется такое...

Откуда берется это число?
Есть такой код: uint hash = 2139062143; hash += 37 * hash; Когда я его впервые писал,...

Вообще не могу понять откуда берется исключение
Необработанное исключение типа &quot;System.IndexOutOfRangeException&quot; произошло в ConsoleProject.exe ...

Как устроена программа и откуда в ней берется картинка
Знающий народ подскажите , вот программка не пойму откуда берется картинка??как вообще программа...

5
Usaga
Эксперт .NET
5871 / 4133 / 730
Регистрация: 21.01.2016
Сообщений: 16,144
Завершенные тесты: 2
21.10.2018, 14:36 2
Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Соколиный глаз, компилятор генерирует.
0
Соколиный глаз
C#
233 / 180 / 115
Регистрация: 25.07.2014
Сообщений: 3,938
Записей в блоге: 1
Завершенные тесты: 3
21.10.2018, 14:39  [ТС] 3
А откуда компилятор узнает какая именно последовательность требуется пользователю, чтобы перечислителем её перебирать? Последовательности же в памяти не хранятся.
0
Usaga
Эксперт .NET
5871 / 4133 / 730
Регистрация: 21.01.2016
Сообщений: 16,144
Завершенные тесты: 2
21.10.2018, 14:51 4
Соколиный глаз, никак не узнает. Просто завернёт код метода в сгенерированный итератор.
0
Соколиный глаз
C#
233 / 180 / 115
Регистрация: 25.07.2014
Сообщений: 3,938
Записей в блоге: 1
Завершенные тесты: 3
21.10.2018, 14:52  [ТС] 5
В свойство Current что ли? А можно простой пример кодом (на примере последовательности 1, 2, 3, где для возврата каждой цифры используется yield)? Хотя бы приблизительно.
0
Usaga
Эксперт .NET
5871 / 4133 / 730
Регистрация: 21.01.2016
Сообщений: 16,144
Завершенные тесты: 2
21.10.2018, 14:53 6
Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Соколиный глаз, возьмите в руки dotPeek или ILSpy и сами посмотрите во что скомпилируется код показанный в первом посте.
0
21.10.2018, 14:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2018, 14:53

Откуда берется число в строчке j = fs.Length / 231; //231 — количество байт занимаемых одним объектом класса ?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Откуда берется мусор при создании массива типа char?
Добрался до темы книги &quot;потоки и файлы&quot;. Решил написать небольшую программу генератора кода. В...

Не могу найти откуда берется пустое мето при верстке
Всем привет! Переделываю типовой шаблон WordPress. Сайт здесь als24.ru Почему-то сверху есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru