- 1
#define RETURN_OR_THROW_EXCEPTION_IF_ERROR(Expression, Exception) if(!Expression) throw Exception; return Expression
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1011
#define RETURN_OR_THROW_EXCEPTION_IF_ERROR(Expression, Exception) if(!Expression) throw Exception; return Expression
3.14159265 03.11.2011 15:38 # +3
О как нынче ассерты стали называть.
AnimeGovno-_- 03.11.2011 15:41 # −5
assert совершенно для другого предназначен. Он только констатирует наличие ошибок программирования в режиме отладочной компиляции.
3.14159265 03.11.2011 15:57 # 0
>или не вызывает return.
>или
у тебя явные проблемы с логикой.
roman-kashitsyn 03.11.2011 16:07 # +1
AnimeGovno-_- 03.11.2011 16:16 # −7
defecate-plusplus 03.11.2011 16:07 # +5
двойное вычисление Expression, вот что печально
3.14159265 03.11.2011 16:19 # +1
А return туда клеить - какое-то безумие.
roman-kashitsyn 03.11.2011 16:22 # +1
+100500
"macros that affect control flow is a _very_ bad idea"
http://lxr.linux.no/linux+v3.1/Documentation/CodingStyle#L624
roman-kashitsyn 03.11.2011 16:11 # +3
AnimeGovno-_- 03.11.2011 16:18 # −1
roman-kashitsyn 03.11.2011 16:24 # +3
Irdis 04.11.2011 00:07 # 0
SmackMyBitchUp 05.11.2011 14:13 # +4
TarasB 06.11.2011 15:12 # +5
Lure Of Chaos 06.11.2011 19:02 # +5
guest 08.11.2011 17:45 # 0
Зачем тебе столько говна, говно?