analizer 29.05.2011 12:25 mcabber

Хозяйке на заметку: если вас огорчает, то что в конструкции «if (int tempVar = func())», результат сравнивается только с нулём, а в enclosing scope вводить переменную tempVar не хочется, просто используйте switch:
switch(int tempVar = func())
{
case 100500: //do something
break;
default: //else
break;
}

1. werehuman 29.05.2011 12:41 Psi+

отстойная конструкция

2. analizerwerehuman /1 29.05.2011 12:43 mcabber

ВАши предложения?

3. werehumananalizer /2 29.05.2011 12:43 Psi+

вынести объявление и инициализацию переменной за скобки

4. analizerwerehuman /3 29.05.2011 12:44 mcabber

>а в enclosing scope вводить переменную tempVar не хочется

5. werehumananalizer /4 29.05.2011 12:45 Psi+

можно другой костыль, хотя он тоже некрасив
функция(){
кодкодкод
{
int i = 0;
кодкодкод
}
кодкод, i нет в помине
}

6. analizerwerehuman /5 29.05.2011 12:46 mcabber

>некрасив

7. werehumananalizer /6 29.05.2011 12:46 Psi+

>тоже

8. jtootfanalizer /6 29.05.2011 17:38 lagrange

зато явен. блок — это синтаксическая конструкция, ограничивающая область видимости; switch — это нечно куда более сложное

Do you really want to delete ?