Example #1
0
 /// <summary>
 /// Default constructor for a deck of cards.
 /// </summary>
 public Deck()
 {
     foreach (Suit suit in (Suit[])Enum.GetValues(typeof(Suit)))     // for each suit in the Suit enum
     {
         foreach (Rank rank in (Rank[])Enum.GetValues(typeof(Rank))) // for each rank in the Rank enum
         {
             cards.Add(new Card(suit, rank));
         }
     }
 }
        /// <summary>
        /// Deep copies a Cards object
        /// </summary>
        /// <returns>Cards object</returns>
        public object Clone()
        {
            CardCollection newCards = new CardCollection();

            foreach (Card sourceCard in this)
            {
                newCards.Add((Card)sourceCard.Clone());
            }
            return(newCards);
        }