Почему мы можем пропустить определение переменной, перейдя сразу к присвоению этой переменной?
switch (2)
{
case 1:
int x;
case 2:
x = 23;
}
std::cout << x;
Давно уже не могу понять почему мы можем пропустить определение переменной, перейдя сразу к присвоению этой переменной? Почему (в этом контексте) пишут что это объявление, если это определение(ну и объявление, а вот наоборот - нет)? Если это действительно было объявление, то тогда вышеизложенный код мне понятен.
Почему я не могу вывести значение x
, ведь они находятся в одной области видимости.