Функция генератор (механика работы)
Primary tabs
Вот есть функция-генератор:
//Использование ссылки function &reference() { $value = 3; while ($value > 0) { yield $value; } } foreach (reference() as &$number) { echo (--$number).' '; }
Механика программы:выделяется память под функцию reference () (1 строка), потом цикл foreach переменную value (которая передана yield) записывает в переменную number. И number. выводится оператором echo, уже предварительно уменьшенное на единицу. Дальше, на втором шаге итерации, ссылочная переменная number меняет переменную value и компилятор переходит на строку 5, выполняется очередной yield и дальше передается управление foreach. Вопрос: если правильно описана механика (примерно), управление действительно передается с 11 строки на строку 5 в генератор обратно?
- Log in to post comments
- 1310 reads
vedro-compota
Sun, 09/20/2020 - 17:43
Permalink
просьба убрать номера строк
просьба убрать номера строк из кода
_____________
матфак вгу и остальная классика =)