错误:在'}'之前预期的primary-expression;代币

时间:2015-10-23 15:32:07

标签: qt switch-statement

void ChangeStates(void)
{
    int i;
    for (i=0; i<CELLS; i++)
    {
        switch (state[i])
        {
        case IMMUNE:
            timer[i]--;
            if(timer[i]==0)
                state[i] = HEALTHY;
            break;
        case INFECTED:
            timer[i]--;
            if(timer[i]==0)
            {
                state[i] = IMMUNE;
                timer[i] = IMM_TIME;
            }
            break;
        case EXPOSED:
            timer[i]--;
            if(timer[i]==0)
            {
                state[i] = INFECTED;
                timer[i] = INF_TIME;
            }
            break;
       default:


        } //Here is the error
    }
}

该计划打算对植物的疾病动态做一些事情,并使用开关功能来改变细胞的状态。

我使用Qt Creator 5.5作为初学者。 但我不知道如何解决这个错误。

提前致谢

1 个答案:

答案 0 :(得分:1)

&#39;默认&#39;之后必须有一份声明,“打破”;&#39;将工作。或者删除建议的默认值,这可能意味着更好的警告(在switch中未处理的枚举值,这总是很好捕获)。

你也可以做&#39; qFatal&#39;在默认情况下再次捕获开关中未处理的state []值。