|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Michael B. Babakov 2:5020/400 23 May 2003 21:27:33 To : Rostislav Chebykin Subject : Re: Как же Switch? -------------------------------------------------------------------------------- Rostislav Chebykin wrote: > Hо впереди еще много задач из области обработки текстов на русском > языке. А там ситуации switch на каждом шагу. Hу, ты упорный, мужик! Тебе уже столько вариантов накидали, а ты все не хочешь понять, что нет в perl'е такой конструкции. Почему нет? Обращайся к автору. Вообще, switch, это избыточная конструкция которая отучает думать в каждом конкретном случае. Хочется присутствия слова switch? Hа тебе: SWITCH: { if ( $mainOList->[$i][$j] == 0 ) { $currBList->[$inx][2] = $mainOList->[$i][2]; $currBList->[$inx][3] = $mainOList->[$i][3]; last SWITCH; } if ( $mainOList->[$i][$j+1] == 0 ) { $currBList->[$inx][2] = $mainOList->[$i][$j]; $currBList->[$inx][3] = $mainOList->[$i][2]; last SWITCH; } $currBList->[$inx][2] = $mainOList->[$i][$j]; $currBList->[$inx][3] = $mainOList->[$i][$j+1]; } } Hадеюсь о if(){}elsif(){}... ты в курсе. > Впрочем, в данном конкретном случае мне, кроме собственно решения > задачи, нужна еще Perl'овая элегантность. Мне не хочется применять > этот язык тупо и топорно. Так что хотелось бы как минимум найти Смотри что тебе посоветовали. Много интерсных и не тривиальных вариантов. > решение, в котором '$var == ' не повторяется четыре раза. Придумай свой язык. За одно рассмотри во что выливается тот же switch в любом другом языке при (пре)компиляции. Внимательно рассмотри. -- С уважением, Михаил Бабаков - --- e-mail: M.Babakov@sochi.net.ru http://sochi.net.ru/~mike --- ifmail v.2.15dev5 * Origin: - --- (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1014967ea16f7.html, оценка из 5, голосов 10
|