информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаSpanning Tree Protocol: недокументированное применениеВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[C++] Дело говорят. Только стиль 06.09.05 00:14  Число просмотров: 2380
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Вот микрософтовская грамматика для инструкций перехода:
http://msdn.microsoft.com/library/en-us/vclang/html/_pluslang_jump_statements.asp

Вот пример из свободно распространяемой грамматики для yacc/bison:
jump_statement:
	BREAK ';'
	| CONTINUE ';'
	| RETURN expression_opt ';'
	| GOTO identifier ';'
	;

/* ... */

expression_opt:
	/* epsilon */
	| expression
	;

---

Скобки относятся к expression и могут как быть так и не быть. Лично я всегда беру в скобки возвращаемое значение, если оно сложнее одного токена (константы/переменной), в остальных случаях - не беру.
<programming>
[C++] return ( ... ) 05.09.05 20:55  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
Часто замечал в коде пофи, когда выражения после кл. слова return помещают в скобки, в том числе и константы.
Например,

return ( rc ) ;
...
return ( true ) ;
...
return ( -1 );

==================

Что за этим стоит, кроме возможно стиля форматирования ?

Спасибо.
Возможно дело в том, что профи относится к функциям, как к подпрограммам и, в результате выходит return'ом, как функцией exit(). Т.е. рассматривает выражение return не как "вернуть значение Х", а как "выйти с кодом Х и остановить работу". 25.09.05 02:23  
Автор: kstati <Евгений Борисов> Статус: Elderman
<"чистая" ссылка>
[C++] Дело говорят. Только стиль 06.09.05 00:14  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Вот микрософтовская грамматика для инструкций перехода:
http://msdn.microsoft.com/library/en-us/vclang/html/_pluslang_jump_statements.asp

Вот пример из свободно распространяемой грамматики для yacc/bison:
jump_statement:
	BREAK ';'
	| CONTINUE ';'
	| RETURN expression_opt ';'
	| GOTO identifier ';'
	;

/* ... */

expression_opt:
	/* epsilon */
	| expression
	;

---

Скобки относятся к expression и могут как быть так и не быть. Лично я всегда беру в скобки возвращаемое значение, если оно сложнее одного токена (константы/переменной), в остальных случаях - не беру.
Привычка. С "детских времен", чтобы быть уверенным, 26.09.05 03:56  
Автор: Zef <Alloo Zef> Статус: Elderman
<"чистая" ссылка>
что компилер не напутает порядок команд, во всех неясных местах ставить скобки.
Да я и сейчас не уверен в ассоциативности и приоритете всех операторов 26.09.05 11:13  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> что компилер не напутает порядок команд, во всех неясных
> местах ставить скобки.

Так что всегда расставляю скобки, если операторов больше одного :-)

Хотя с return-ом другой случай. Я уверен, что выражение вычислится до того как будет выполняться return, но тем не менее ставлю скобки вокруг сложных выражений просто для красоты.
Аналогично... Я просто не заморачиваюсь этим вопросом. Воткнуть скобки 27.09.05 03:54  
Автор: Zef <Alloo Zef> Статус: Elderman
<"чистая" ссылка>
проще, чем выяснять, что будет, если их не воткнуть...
ИМХО, только стиль форматирования. Во всяком случае в спецификации я никаких оговорок о круглых скобках с return'ом не нашёл. 05.09.05 21:44  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach