一,初始化操作由 case 标签跳过
如果要在case里面定义变量,需要用括号括起来{},不然会出错,例如:
#include <iostream>
using namespace std;
void main()
{
int val = 2;
switch(val)
{
case 1:
int x = 20;
break;
case 2:
break;
default:
}
}
错误信息:
main.cpp(15): error C2360: “x”的初始化操作由“case”标签跳过。
本文探讨了在C++中如何正确地在switch-case结构内初始化局部变量,并给出了一个具体的例子来说明不当做法可能导致的编译错误。
873





