跳转到内容

Futurebasic/语言/参考/begin enum

来自维基教科书,自由的教科书

Begin Enum

[编辑 | 编辑源代码]

✔ 外观 ✔ 标准 ✔ 控制台

begin enum [start [,inc]]
  _constName1 [= staticExpression1]
  _constName2 [= staticExpression2]
  _constName3 [= staticExpression3]
  _constName4 [= staticExpression4]
end enum

此语句开始一个“枚举常量”定义行的块。该块必须以 end enum 语句结束。在此块中定义的所有常量都是全局的,无论该块在程序中的哪个位置出现。

begin enum...end enum 块是“不可执行的”,这意味着如果它出现在任何类型的“条件执行”块中,例如 for...nextlong if...end ifdo...until 等,它不会被重复或跳过。(但如果它出现在 compile long if 块中,它可以被有条件地包含或排除。)

每个 _constName 表示一个以前未定义的符号常量名,每个 staticExpression 表示一个仅包含以下内容的整型表达式:

  • 整数文字常量;
  • 先前定义的符号常量名;
  • 运算符(如 +、-、*、/、>、=);
  • 括号

(特别地,它不能包含变量,也不能包含函数引用。) begin enum 块为每个 _constName 符号常量分配值,如下所示:

  • 如果 _constName 后面跟着 = staticExpression,则 _constName 被分配 staticExpression 的值;
  • 如果 _constName 后面没有跟着 = staticExpression,则 _constName 被分配其上面一行中 _constName 的值,加上 inc 的值;
  • 如果第一个 _constName 后面没有跟着 = staticExpression,则它被分配 start 的值。

startinc 参数(如果包含)必须是静态整型表达式。start 的默认值为 0,inc 的默认值为 1。

在以下示例中,七个小矮人被分配了从 1 到 7 的值;_snowWhite 被分配了 100 的值,_thePrince 被分配了 101 的值。

begin enum 1
  _docDwarf
  _sneezy
  _grumpy
  _sleepy
  _dopey
  _happy
  _bashful
  _snowWhite = 100
  _thePrince
end enum

没有特殊说明。

语言参考

华夏公益教科书