switch 与 fall-through

匹配 case 后若没有 break,会继续向下「穿透」执行后面的 case
int x = 2;  switch (x) { … } 两块代码几乎相同,只差 case 后那一句 break; —— 看控制流走到哪里 没有 break · 会穿透 switch (x) { case 1: cout << "one"; case 2: cout << "two"; case 3: cout << "three"; default: cout << "other"; } 输出 每个 case 加 break · 只执行一个 switch (x) { case 1: …; break; case 2: cout<<"two"; break; case 3: …; break; default: …; } 输出