C++:在switch的case中定义变量的问题
- 问题描述:
平常写代码过程中常会遇到在switch-case中定义局部变量(如下面的示例中的“case ECOLOR_RED 代码1中定义的temp变量”),但是编译总是无法通过。之前看到书中提到过这个问题,但是好久没写C++,就忘了具体怎么回事,这次用到总算弄明白了。为了以后万一遗忘了方便查阅,特地记录说明。
switch(color)
{
case ECOLOR_RED:
int temp = 10; //1: case中定义局部变量 ERROR;
……
do something;
……
break;
case ECOLOR_GREEN:
{
int temp &#