有可能有一个switch作为外switch语句序列的一部分。即使在内外switch的case的常数包含共同的值,没有冲突将出现。
C++规定,至少允许256层嵌套switch语句。
语法
嵌套switch语句的语法如下:
switch(ch1) { case 'A': cout << "This A is part of outer switch"; switch(ch2) { case 'A': cout << "This A is part of inner switch"; break; case 'B': // ... } break; case 'B': // ... }
例子:
#include <iostream> using namespace std; int main () { // local variable declaration: int a = 100; int b = 200; switch(a) { case 100: cout << "This is part of outer switch" << endl; switch(b) { case 200: cout << "This is part of inner switch" << endl; } } cout << "Exact value of a is : " << a << endl; cout << "Exact value of b is : " << b << endl; return 0; }
这将产生以下结果:
This is part of outer switch This is part of inner switch Exact value of a is : 100 Exact value of b is : 200