У меня есть небольшая структура -
struct Card {
public string suit;
public string value;
}
, которую я затем использую для инициализации массива карт
Card[] deck = new Card[52];
В моем Main () я вызываю
Deck myDeck = new Deck();
Что соответствует конструктору
public Deck() {
int cardNum = 0;
for (int i = 0; i < numSuits; i++) {
for (int a = 0; a < numValues; a++) {
deck[cardNum].suit = suits[i];
deck[cardNum].value = values[a];
Console.WriteLine("The card at position " + (cardNum + 1) + " is the " + deck[cardNum].value + " of " + deck[cardNum].suit);
cardNum++;
}
}
}
..., создавая таким образом колоду из 52 карт, что, как подтверждает мой Console.WriteLine (), правильно заполняет колоду.
Моя проблема в том, что у меня есть 2 других метода, public void Shuffle () и public string Deal (), которые, как показывают их названия, перетасовывают колоду и раздают верхнюю карту соответственно, однако я не знаю, какпередать значения deck.suit и deck.value в указанные методы.
Я попытался инициализировать массив Card [] внутри конструктора.Все эти функции находятся в одном и том же пространстве имен и классе.
Я также хотел бы сохранить конструктор и два метода в коде и больше ничего не использовать, хотя я уверен, что есть много других, потенциальноболее простые способы сделать это.
Заранее спасибо!