【发布时间】:2014-08-22 00:18:03
【问题描述】:
我真的不明白如何声明一个枚举,我试过这个
enum cardValue {2 = 0, 3, 4, 5, 6, 7, 8, 9, T, J, Q, K, A};
和
enum cardValue {"2" = 0, "3", "4", "5", "6", "7", "8", "9", "T", "J", "Q", "K", "A"};
在这两种情况下,编译器都会抱怨我使用的符号。我知道格式不正确,但是我可以对此做些什么,以便下面的代码开始工作吗?
(这里,V 可以是"K"、"5" 或任何其他值)
struct card
{
cardValue value;
cardSuit suit;
public card(string V, string S)
{
value = SomeTransformation(V);
suit = SomeTransformation(S);
}
...
}
【问题讨论】:
-
看看C# Enum
-
你为什么不试试看一下msdn文档?
-
你想知道如何实现
SomeTransformation吗?您不能创建返回两种不同类型的方法。所以你需要一个SomeCardValueTransformation和一个SomeCardSuitTransformation。您可以检查字符串是否仅包含一个数字 f.e.通过使用int.TryParse,然后调用正确的转换方法。
标签: c# enums declaration