Здравствуйте, Varavva, Вы писали:
V>Кто как ставит { для цикла for? V>В смысле в этой же строке или отдельно на следующей?
V>Мне ужасно неудобно и плохо читаемо, когда { на той же строчке. Какие плюсы такого написания? Текст программы сокращается? Ну смешно же это.
Всеми разделяется убеждение, что вареные яйца при
употреблении их в пищу испокон веков разбивались с тупого конца; но дед
нынешнего императора, будучи ребенком, порезал себе палец за завтраком,
разбивая яйцо означенным древним способом. Тогда император, отец ребенка,
обнародовал указ, предписывающий всем его подданным под страхом строгого
наказания разбивать яйца с острого конца. Этот закон до такой степени
озлобил население, что, по словам наших летописей, был причиной шести
восстаний, во время которых один император потерял жизнь, а другой —
корону
Здравствуйте, Varavva, Вы писали:
V>Кто как ставит { для цикла for? V>В смысле в этой же строке или отдельно на следующей?
V>Мне ужасно неудобно и плохо читаемо, когда { на той же строчке. Какие плюсы такого написания? Текст программы сокращается? Ну смешно же это.
Всегда ставлю на этой же строке. Сокращает число строк, больше помещается на экран. Ничего смешного не вижу и каких-то преимуществ ставить { на отдельной строке тоже не вижу.
Зависит от языка. В C++ ставлю на отдельной строчке, в JS -- на той же.
Меня больше бесит отсутствие в большинстве Lisp'ов мега-закрывающей скобки. А то в некоторых (например, в Clojure) ещё и на одной строчке принято закрывать все накопившиеся скобки. Потом сиди и разбирай, куда тебе свою впихнуть надо, или откуда убрать ненужную:
Здравствуйте, b0r3d0m, Вы писали:
B>Меня больше бесит отсутствие в большинстве Lisp'ов мега-закрывающей скобки. А то в некоторых (например, в Clojure) ещё и на одной строчке принято закрывать все накопившиеся скобки. Потом сиди и разбирай, куда тебе свою впихнуть надо, или откуда убрать ненужную:
Эту проблему помогает решить режим редактирования в котором манипулирование совершается не на уровне отдельных символов скобок и т.п., а на уровне узлов синтаксического дерева: https://www.youtube.com/watch?v=D6h5dFyyUX0
Здравствуйте, Varavva, Вы писали:
V>Мне ужасно неудобно и плохо читаемо, когда { на той же строчке. Какие плюсы такого написания? Текст программы сокращается? Ну смешно же это.
Переходи на Фортран, и этот вопрос перестанет тебя волновать сразу и на всю жизнь.
V>Кто как ставит { для цикла for? V>В смысле в этой же строке или отдельно на следующей?
V>Мне ужасно неудобно и плохо читаемо, когда { на той же строчке. Какие плюсы такого написания? Текст программы сокращается? Ну смешно же это.
пишу часто на той же строке, если и закрывающая скобка тоже на этой же строке (то есть внутри 1-2, максимум 3 стэйтмента)
ради экономии строк и объектов внимания
for( int i=0; i<50; i++ ) { if( i%2 == 0 ) Console.WriteLine("Гляди-ка, чётное: "+i); }
// или так чаще:for( int i=0; i<50; i++ ) { Console.WriteLine( (i%2==0 ? "Чётное" : "Нечётное") + ": " + i); }
Властитель слабый и лукавый,
Плешивый щеголь, враг труда,
Нечаянно пригретый славой,
Над нами царствовал тогда.... (А.С. Пушкин ? )
Здравствуйте, утпутуук, Вы писали:
У>Здравствуйте, Varavva, Вы писали:
V>>Кто как ставит { для цикла for? V>>В смысле в этой же строке или отдельно на следующей?
У>Отдельно У>
Здравствуйте, Varavva, Вы писали:
V>Мне ужасно неудобно и плохо читаемо, когда { на той же строчке. Какие плюсы такого написания? Текст программы сокращается? Ну смешно же это.
А вообще от языка зависит. Если операторные скобки — это еле видимые фигурные скобочки, то приходится делать лишний перенос и ставить одну на другой. Потому что иначе ну в натуре не видно, где блок начинает и кончается. В языках, где блок завершается жирным словом end (Паскалоиды, Луя), нет необходимости в переносе. Сразу издалека видна пара if-end, или for-end.
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Здравствуйте, alpha21264, Вы писали:
A>>Я ставлю на следующей строке — чтобы открывающая и закрывающая скобка стояли друг над другом. A>>
A>>for( int i=0 ; i<10 ; i++ )
A>>{ printf("сам дурак!\n"); // <-- скобка и первый оператор на одной строке
A>>}
A>>
EP>В этом варианте неудобно менять строки местами, копировать и т.п. — так как мешается первая скобка.
Я знаю. Но программы гораздо чаще читаются, чем пишутся.