c++: switch statement missing semicolon before close brace(c ++:switch语句在右括号前缺少分号)

本文介绍了c ++:switch语句在右括号前缺少分号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为了将来的读者和我自己以后的理智,我想绝对清楚地说明,没有 default 情况的 switch 语句(由于所有所涵盖的情况)或顺序 if-elseif-else 不能省略不应该做任何事情的最终 else 并且包含对此效果的注释(参见示例).

但是,每当我在 switch 语句中包含 default 案例并将其留空时,我必须在 default 案例中放置一个分号或编译器错误:行 [switch 语句的右大括号行]`缺少';'在 '}'" 发生之前.为什么?!

示例:生成编译器错误

开关(方向){案例 MOVE_UP://...休息;案例 MOVE_RIGHT://...休息;案例 MOVE_DOWN://...休息;案例 MOVE_LEFT://...休息;默认:/* 没做什么 *