![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
AlexPro |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 9.11.2005 Где: Санкт-Петербург Репутация: 1 Всего: 4 |
Хотел тоже высказаться, но после K&R остается только дабавить : Аминь!
![]() Хотя не знаю, 10-15 лет назад - это можно еще относить к нашим временам? ![]()
В этом плане у меня довольно интересный опыт: после ассемблера я перешел на FoxPro. В виду полного отсутствия операторов перехода, мне пришлось поневоле от них отказаться. После ассемблера с его десятками операторов перехода, отсутствие их в Фоксе поначалу приводило в ступор. Так что имеется опыт как интенсивого использования операторов перехода, так и полного отказа от них. В проекте, над которым я сейчас работаю (20К строк) оператор goto используется ровно пять раз. Каждое его использование обусловлено соображениями производительности и (или) читаемости кода (т.е. использование оператора приводило к упрощению кода). Везде операторы и метки перехода находятся в пределах одного экрана. Что, собственно, я этим хотел сказать? Да ровно то, что уже сказали Керниган и Ричи: оператор можно использовать, но если это действительно нужно. |
|||
|
||||
Kirill89 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 501 Регистрация: 17.10.2006 Где: Питер Репутация: нет Всего: 4 |
Я может быть немного не по теме, но как например в visual basic без goto обойтись? например on error goto <метка>.
|
|||
|
||||
Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 9 Всего: 59 |
А при чем здесь форум С++ ?
|
|||
|
||||
Kirill89 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 501 Регистрация: 17.10.2006 Где: Питер Репутация: нет Всего: 4 |
я и говорю, немного не по теме. просто это можно сказать довод в пользу goto, ведь речь шла об операторе, а не языке... |
|||
|
||||
UniBomb |
|
|||
Новичок ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
bel_nikita,
Вот это действительно аминь... Anikmar, Kirill89, Вероятно автор топика имел в виду использование оператора в программах c/cpp. Хотя кто его знает ![]() |
|||
|
||||
Voldemar2004 |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: нет Всего: 23 |
![]() А в VB
-------------------- i_i (';') (V) ![]() |
||||||
|
|||||||
Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 9 Всего: 59 |
И наоборот. С goto иногда получается красивее и быстрее. Блин, я тоже в этот баян втянулся... ![]() Я в своем проекте использую goto целых 3 раза и не собираюсь ничего выдумывать, чтобы его от туда вымарать - он там логично сидит, никому не мешает, ничего не нарушает, а городить хренову тучу отступов и скобок не вижу смысла. Тем более использовать throw... Нормальный оператор. Расширяет возможности языка. Все лежит на совести программера. Как говорится с дури и х... сломать можно. |
|||
|
||||
UniBomb |
|
|||
Новичок ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
Anikmar,
Вот! Вот оно!! Всё таки есть те, кто считает нормальным использовать оператор и те, кто считает это злом... кстати, отсюда следует правило - хороший баян заразителен ![]() Это сообщение отредактировал(а) UniBomb - 19.12.2006, 00:13 |
|||
|
||||
SergeCpp |
|
|||
![]() ![]() ![]() Профиль Группа: Участник Сообщений: 955 Регистрация: 8.8.2005 Где: At Home Репутация: 15 Всего: 124 |
Пожалуй, будет интересен некий исторический экскурс в тему
Вот с такой вот стороны ![]() ![]() И вот с такой вот Structured Programming with go to Statements. Donald Ervin Knuth (PDF in 2.9 M) ![]() |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
я использовал goto всего 2 раза в жизни:
1 раз в программе на С, там это к месту было... 2 раз в программе на паскале, курсе эдак на первом)) Добавлено через 1 минуту и 27 секунд вообще считаю что можно, но не больше одного goto на ф-ю, иначе код читать станет невозможно... |
|||
|
||||
SaDFromSpb |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 5.4.2006 Где: Санкт-Петербург Репутация: 3 Всего: 3 |
Если ты обходишь дерево для поиска элемента, то его нахождение должно быть как раз естественным завершением всей рекурсии... В Java вообще оператора goto нет. (Хотя слово goto зарезервировано - использовать его нельзя). Посправшивайте в ветке о Java на сколько сильно они от этого страдают ![]() ЗЫ. Ну нифига вы бородатую тему подняли из праха =) -------------------- "За исключением части, касающейся потоков, библиотека Loki написана на стандартном языке С++. Увы, это означает, что многие современные компиляторы не смогут работать с ней в полном объеме." (А. Александреску. Modern C++ design. 2001) |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
||||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
ага так как логику работы этого
уже не переварить |
|||
|
||||
Cycle |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 1.12.2007 Репутация: 3 Всего: 3 |
А исключения это уже сложно? Люди стараются придумывают замену goto для вас, а вы...
![]() |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
goto - вещь полезная и во многих случаях оправдана
очень полезна в управлении ресурсами в структурных языках типа С здесь возможна замена goto функциями, но код будет менее эффективен и логичен долой предрассудки! ![]() Добавлено через 1 минуту и 6 секунд не всегда оправдано исключения - крайне тяжеловесный механизм для прикладной логики самое то, но для критичных участков не подойдет -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |