今天写程序发现一个比较奇怪的VC++编译器规则,是对于switch的,在VC2005中:
int i=3;
switch(i)
{
case 0:
int j; // It’s ok, but if you initialize the variable j here, for example we write int j=2; here ,
// an error is given by the compiler (C2360)
j=2;
break;
case 1:
break;
case 2:
break;
case 3:
break;
}