【发布时间】:2013-08-03 05:24:07
【问题描述】:
我知道对象枚举是 Java 超越 C# 的少数功能之一,有时我认为我错过了该功能。
但我见过一些情况,一个类用于表示对象的枚举,使用常量字段,因此它可以“返回一个对象”,而不是一个 int。
一个例子是 Brushes 类。它的工作原理真的很像枚举。
Brush b = Brushes.Blue;
我们可以看到主要区别(至少对我而言)是其他类(Brush 类)需要存储从 Brushes 类返回的值(一些具有隐式运算符重载的代码可以做到这一点)。
所以,我的问题是:好的做法?
因为我正在考虑在我的项目中使用它来制作动画 (WPF) 的枚举,以用于我创建的 CustomControl。
这对我来说似乎很好,并且比使用整数枚举更好,因为我需要使用 switch-case 来检测用户想要的女巫动画。
【问题讨论】:
-
它...不像枚举那样工作。这些是返回冻结
SolidColorBrushs 的静态只读属性。另外,“对象枚举是 Java 超越 C# 的少数东西之一”你在说什么? -
据我了解,C# 中的枚举不能表示与 int 不同的任何东西;例如java枚举可以表示字符串看这个问题。 stackoverflow.com/questions/3978654/java-string-enum 对不起,如果我不清楚,对不起我的英语。
-
我也知道这不能用作枚举(我再次不清楚)。我只想知道使用我说的类是否可靠。
-
这道题stackoverflow.com/questions/5250915/…是我想做的,而这道题的答案是类的使用,就像说的那样。
标签: c# animation enumeration