|
|
1
1
为了扩展Dan R的答案,您可以创建一个严格的事件(如枚举的方式)类,如下所示:
然后,可以通过扩展strict事件类并在静态初始值设定项中调用initEvents来定义自定义事件类。下面是使用此方法的示例:
|
|
|
2
1
虽然这两个答案为验证字符串值提供了不同的解决方案,但它们并没有回答关于 有 来检查这些值。必须这样做,至少因为常量的值是字符串本身。 所以答案是否定的——不管怎样,如果你在扩展事件的话就不是了。因为初始参数必须是一个字符串(在扩展事件的范围内),所以不管您使用多少级别的间接寻址,您最终仍将根据有效值列表检查参数。传入字符串以外的任何内容都将引发运行时错误。 |
|
|
3
1
克里斯蒂安是对的——这个问题包含了一个模棱两可的术语。当您检查事件“类型”时,它们不是数据类型,即类对象,它们只是将事件的特定“味道”传递给侦听对象的字符串值。 我个人认为,您不需要对事件类型进行运行时验证。如果代码尝试使用不存在的事件常量,例如
|
|
|
4
0
如果要将每个静态常量都设为大写常量名称的小写字符串,则可以执行以下操作:
|
|
|
5
0
有几种方法可以解决这个问题:
|
|
|
Utkonos · 如何将Python枚举公开为不带类名的“常量” 2 年前 |
|
|
Yugraaj Sandhu · 把const作为引用和值有什么区别? 2 年前 |
|
|
user246392 · 泛型参数在中没有匹配的注释。净8 AOT 2 年前 |
|
Fyodor · 避免GCC编译器“不兼容的指针类型”警告 2 年前 |
|
|
semicolon_missing · 指针的常量引用 2 年前 |
|
|
Sasha · C: void*作为句柄,失去const表达能力 2 年前 |
|
|
ÐÐ³Ð¾Ñ Ð¢ÑиÑонов · 忽略字符常量 3 年前 |