在 e 文件中,这样说是完全合法的:
print 5;
但与此同时,以下事情不起作用:
type some_type_e : [ VAL1, VAL2 ];
print VAL2; // issues a compile error
解析器期望 VAL2 是一个变量名并且不将其解释为一个常量。
同时,允许这样做:
var some_int : int = 10;
if some_int != 5 {
print "Some int not 5"
};
var some_enum : some_type_e = VAL1;
if some_enum != VAL2 {
print "Some enum not VAL2";
};
在这种情况下,VAL2 被解释为一个常数。
print 的(简化)语法是print <exp>
. 枚举文字不是表达式吗?