切换操作符

case全部变量和相应表达式值检测的操作符之内比较常数表达式值。每一个case变量会在整数常数表达式内标注。常数表达式不包含函数变量调用。switch表达式操作符必须是整数类型 – int 或 uint。

switch(expression)
  {
   case constant: operators
   case constant: operators
      ...
   default: operators
  }

如果在case操作符等于表达式值,操作符default标签连接将会执行。此default变量无需在最后。如果相应表达式值和default变量没有获取,不会有任何执行。

关键词case和常数被标注,并且if 操作符执行 case变量,程序将执行以下所有操作符直至break操作符生成。

一个常数表达式的计算是在编译期间。在一个switch操作符内部存在两个相同值的常数。

示例:

//--- 第一示例
switch(x)
  {
   case 'A':
      Print("CASE A");
      break;
   case 'B':
   case 'C':
      Print("CASE B or C");
      break;
   default:
      Print("NOT A, B or C");
      break;
  }
 
//---  第二示例
   string res="";
   int i=0;
   switch(i)
     {
      case 1:
         res=i;break;
      default:
         res="default";break;
      case 2:
         res=i;break;
      case 3:
         res=i;break;
     }
   Print(res);
/*
   结果
   默认
*/

另见

变量初始化可见范围和变量使用期创建和删除对象