У меня разрыв шаблона, почему это видео на канале про 1С, с другой стороны - довольно толковое, спасибо.
@iscultas3 жыл бұрын
Пример на 32:15 хорош, но оператор goto решает эту проблему ещё элегентней.
@yeputons3 жыл бұрын
goto иногда решает чуть менее изящно: возникает беда, если у нас вообще нет "значения по умолчанию" у переменной, и ещё некоторые, можно поподробнее глянуть доклад про антипаттерн Initialize-Then-Modify: kzbin.info/www/bejne/eZurmH9reraXmbs
@iscultas3 жыл бұрын
@@yeputons Итак, этот коментарий я оставляю до просмотра доклада. Что ты собираешься возвращать из лямбды если там нет значений по умолчанию а в циклах ничего не найдено?
@yeputons3 жыл бұрын
@@iscultas зависит от конкретного задачи. Например, иногда разумно выкинуть исключение. Иногда можно гарантировать, что значение должно быть, тогда на путях выхода без return можно поставить assert/abort/terminate. А иногда действительно нужно обрабатывать обе ситуации: нашли/не нашли, тогда можем выбирать между std::optional, sentinel-значениями и ещё чем-нибудь.