我正在寻找以下错误的帮助:
'Practical_2.Card'是'type',但用作'变量'
这是我的代码:
class Tester
{
static void Main(string[] args)
{
Card[] hand = {
new Card("Spade", 3),
new Card("Club", 10),
new Card("Diamond", 11),
new Card("Heart", 9),
new Card("Diamond", 13),
};
ProcessHand(hand);
}//end of static void main
static void ProcessHand(Card[] cards)
{
Console.WriteLine("{0,-10:s}: {1,-10:i}", "suit: ", Card[0]);
}//end of static void processhand
}//end of class Tester
class Card
{
public string suit { get; set; }
public int facevalue { get; set; }
public Card (string su, int fa)
{
suit = su;
facevalue = fa;
}
public void DisplayCard()
{
Console.WriteLine(suit, facevalue);
}
}//end of class Card
我在这一行收到错误:Console.WriteLine("{0,-10:s}: {1,-10:i}", "suit: ", Card[0]);
帮助我非常感激。 干杯
答案 0 :(得分:5)
Card[0]
应为cards[0]
- Card
是一种类型,正如编译器告诉您的那样,您的数组名为cards
。
答案 1 :(得分:1)
你想要这个:
Console.WriteLine("{0,-10:s}: {1,-10:i}", "suit: ", cards[0]);
Card
是一个类型(一个类),其中cards
是你的变量,一个数组开始传入函数。
答案 2 :(得分:-1)
正如普雷斯顿和sovemp所提到的那样,你的错误是因为一个错字,而这是因为C#是区分大小写的。
如果你想了解更多,请从另一个stackoverflow问题Why is C# Case Sensitive?
中查看这个很棒的答案