Re[7]: семантика switch/case
От: ononim  
Дата: 17.12.15 21:26
Оценка: +1
DE>>>В Swift и Go есть специальное ключевое слово fallthrough, а break используется по умолчанию и явно писать его не требуется.
S>>То есть просто зеркальное поведение от ц++, так? Левая и правая руки. Если так, то пример не показателен. В ц++ надо явно проставлять бряки, когда хочешь сработку только одного case, а тут наоборот, надо явно указать fallthrough если нужна сработка нескольких по порядку.
TB>Да, "всего лишь" зеркальное поведение. Всего лишь убрали необходимость постоянно делать над собой усилие, чтобы не упасть. Мелочь какая. И совершенно ненужная, реальные пацаны же не падают. Зря они так сделали короче.
А потом набегут питонисты, и начнут говорить что проваливающийся в пределах отступа if — плохо, что они по привычке написали
if (can())
  do();
  do_hast();
  do_hast_mich();

И du_hast() сработал совершенно внезапно для всех бывших петонистов, а значит надо срочно-обязательно ввести фигурные скобочки после if. Чтоб было четко видно. ну и чтоб не было вот такого
if (can());
  do();

на что кстати лично я напарывался чисто механически, во всяком случае мне это запомнилось, в отличии от проваливающихся кейсов.
Как много веселых ребят, и все делают велосипед...
Отредактировано 17.12.2015 23:35 ononim . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.