Show/Hide Toolbars

XSharp

用途

有条件地执行语句块

语法

DO CASE
CASE <lCondition>
  <Statements>...
[CASE <lCondition>]
  <Statements>...
[OTHERWISE]
  <Statements>...
END[CASE]

参数

<lCondition>如果该表达式求值为 TRUE,则执行其后面的语句,直到下一个 CASE、OTHERWISE 或 ENDCASE。之后,控制权分支到下一个 ENDCASE 语句之后的语句。

 

OTHERWISE如果前面所有 CASE 条件的值都为 FALSE,则执行 OTHERWISE 之后的语句,直到下一个 ENDCASE。之后,控制分支到下一个 ENDCASE 语句之后的语句。

描述

DO CASE 的工作方式是分支到第一个求值为 TRUE 的 CASE <lCondition> 之后的语句。如果所有 CASE 条件的结果都是 FALSE,则分支到 OTHERWISE 语句(如果指定)后面的语句。

执行一直进行到遇到下一个 CASE、OTHERWISE 或 ENDCASE,然后控制分支到下一个 ENDCASE 语句后的第一个语句。

控制结构可以嵌套到任意深度。唯一的要求是每个控制结构都必须正确嵌套。

注意:DO CASE...ENDCASE 与 IF...ELSEIF...ENDIF 相同,两种语法在性能上都没有优势。

示例

此示例在菜单结构中使用 DO CASE,根据用户的选择进行控制分支:

FUNCTION ActonChoice(nChoice as LONG) AS VOID
DO CASE
CASE nChoice = 0
  RETURN
CASE nChoice = 1
  ChoiceOne()
CASE nChoice = 2
  ChoiceTwo()
ENDCASE

参见

BEGIN SEQUENCE, DO WHILE, FOR, FOREACH IF SWITCH