昨天的代码中涉及switch-case语句又出现了某个变量没有初始化的报错,如下提示:
switch(cmd)
{
..............................
case CMD_FAC_DEFAULT:
TvApi_RestoreDefault();
//{
CChannel *pChannel = TvApi_GetChannel(0);
if (pChannel != NULL) {
TvApi_PlayChannel(pChannel,false,true);
delete pChannel;
}
// }
break;
case ....:
break;
}
error: jump to case label
error: crosses initialization of 'CChannel* pChannel'
之前也遇到了这种情况,我总是在整个case条件加上{}来解决,从来没有细究过原因,一个老同事告诉