У меня есть блок кода, который я пытаюсь преобразовать из PHP в C++, и компилятор получает зависание в моих операторах switch.Инициализация переменных (int32) внутри оператора switch
У меня есть кое-что вдоль линий:
switch(//Some int)
{
case 1:
default:
int32 x = 1;
doSomething(x);
break;
case 2:
doSomething(3);
break;
}
И это метание ошибки:
ошибка C2360: инициализация 'х' пропускается 'случае' этикеточной
Я, кажется, могу исправить это, объявив и инициализируя переменные за пределами оператора switch, но почему это? В чем проблема с созданием временных переменных в рамках оператора switch?
Просто для дальнейшего уточнения, я только пытаюсь использовать x
в том, что один вызове к doSomething(x)
. Я не пытаюсь использовать его вне сферы действия оператора switch.
А я вижу. Это не ограничение в PHP, поэтому я никогда не сталкивался с этим раньше. Благодаря :) – David