示例#1
0
CardDeck::CardDeck(int numberOfDecks) :
  _current_pos(0),
  _numberOfDecks(numberOfDecks)
{
  for(int i = 0; i < _numberOfDecks; i++) {
    for(int suit = Card::Suit_Min; suit <= Card::Suit_Max; suit++) {
      for(int val = Card::Value_Min; val <= Card::Value_Max; val++) {
        card_ptr_t card_ptr(new Card(static_cast<Card::card_suit_t>(suit),
              static_cast<Card::card_value_t>(val)));
        _cards.push_back(card_ptr);
      }
    }
  }
}
示例#2
0
			card_ptr Deck::GetCardAt(int index) const
			{
				if (index < Cards.size())
					return Cards[index];
				return card_ptr();
			}