我正在使用C#和.NET Framework 4.5.1开发WPF游戏。
我有这堂课:
public class Player
{
public Card[4] Hand { get; set; }
}
我需要设置Player.Hand
只能包含四张牌(Card
是一个代表牌的牌。)
我该怎么办?上面的代码显示了异常"matrix size cannot be specified in variable declaration"
。如果我使用List<Card>()
,我可以设置最大尺寸。
答案 0 :(得分:3)
数组的大小不是类型的一部分。
您需要使用该尺寸创建:
public Card[] Hand {get; set;}
public MyClass()
{
Hand = new Card[4];
}
您还可以使用完整属性并将数组初始化为该大小。
private Card[] hand = new Card[4];
public Card[] Hand
{
get { return hand; }
//Set if you want!
}
答案 1 :(得分:1)
在属性声明中,您应仅指定属性类型,而不指定数据。可以在创建数组时指定数组大小。
public class Player
{
public void Initialize()
{
// An example of initialization logic
Hand = new Card[4];
for (int i = 0; i < Hand.Length; i++)
Hand[i] = new Card();
}
public Card[] Hand { get; set; }
}
public class Card
{
}