Pull to refresh
41
0
Захаров Кирилл@yTko

Пишу код, делаю стартап и немного пишу в telegram

Send message
Учту, да. Здесь я говорил «структура» в том понимании, что она уже реализована и как таковым абстрактным объектом не является.
Скорее всего struct из си оказал влияние :)
Касательно деревьев конкретных применений не скажу, поскольку с реальными задачами не сталкивался, где их можно было бы применить.
Но, например, в качестве выполнения курсовика по Хаффману — делал. Да, кто-то скажет что это велосипед, но в то время на это были свои причины. Удобный вывод итогового дерева, например.
Как вариант использования — древовидная структура вопрос-ответ, когда в зависимости от ответа выдается нужный вопрос.
Минусующим данный пост, предположительно, не понравился блок с кривым выравниванием картинок. Исправил.
Спасибо, про графы еще не читал, хочу сравнить насколько перевод лучше простого чтения)
опять же, если мне не изменяет память, то в воображаемой мной статье на хабре на этот счет (может это и ализар даже был), там было все так:
мужик спас филиппины от темноты, придумав забавный способ освещения их домов с помощью пластиковых бутылок. затем было освещение самого устройства и ссылка на сайт «литра света», на который я переходил и наблюдал интерактивный мануал, где дети пихают бутылку в часть кровли, замазывают все это, наполняют водой и вставляют в крышу, попутно замазывая все это еще раз.
и комменты были похожие — а-ля дома близко, поэтому и освещения мало и т.д. и т.п.

ну не бывает таких длинных дежавю, я читал это на хабре! :D
пойду спрошу у ализара)
Добавил в пост
Это что-то нереально крутое, спасибо! *вижу первый раз*
Могу ошибаться, но вроде я видел историю про это на хабре. Называлась типа «Литр света», было видео и пруф на сайт, где дети показывали как сделать такую лампу.

www.membrana.ru/particle/16780 Может быть путаю с мембраной, конечно
Тоже интересное решение, в таком случае (принудительный break) выполняется только блок finally и не выполняет остальной код генератора.
Если же просто заканчивается перебор то выполняется блок finally и остальной код генератора. Чуть позже попробую добавить это в статью.
Warning как раз из-за того, что сначала fclose сработал в catch, а затем в конце генератора.
Хм, странно. Начал пробовать до вашего комментария, ответа, честно, не знал и решил затестить.
В голове возникло 2 решения обхода «возможной проблемы»:
1. Передать в генератор не имя файла, а сам fopen. Но могли быть проблемы во времени выполнения.
2. Бросить исключение и внутри catch закрыть файл.

Покажется странным, но когда делается break, fclose почему-то не срабатывает в таком случае.
В варианте передачи fopen нужно самому делать fclose, вне генератора.
C исключением, как мне показалось, самый толковый вариант — оборачиваем цикл в try, дальше либо в catch закрываем fopen, либо catch оставляем пустым и дальше генератор доходит до самого конца сам, тем самым закрывая fopen.

Все 3 варианта опробовал тут kocou.yTko.ws/gen_test.php || pastebin.com/zuqQd0LT

Поправьте, если где ошибаюсь где-то

поменял формулировку, теперь вроде как новые возможности действительно добавляют новые возможности)
если я правильно понял вопрос, то тогда вроде второй вариант — не выполняется никогда, поскольку последующий запуск генератора не будет знать о предыдущем запуске ничего. каждый новый запуск генератора выполняется с самого начала.
или вы имели в виду принудительную остановку генератора во время его работы?
да, чуть выше согласился, что это моя ошибка в переводе
Ну автор статьи (не я) имел в виду то, что коренным образом ничего нового языку генераторы не добавили, а лишь упростили доступ к итераторам и их использование.
Здесь скорее моя ошибка в переводе. Возможность новая (так она и заявлена), но она двоякая из-за того, что это скорее дополнение к итераторам.
Спасибо!
Сам бы себе инвайт я бы не дал за этот пост, но раз кидают в избранное — значит это кому-нибудь нужно.
12 ...
16

Information

Rating
Does not participate
Location
Тбилиси, Грузия, Грузия
Registered
Activity