#ifndef EXERCISE_4_HPP_ #define EXERCISE_4_HPP_ #include class Card { public: enum rank {ACE = 1, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING}; enum suit {CLUBS, DIAMONDS, HEARTS, SPADES}; Card(rank r = ACE, suit s = SPADES, bool ifu = true): m_Rank(r), m_Suit(s), m_IsFaceUp(ifu) { } int GetValue() const; void Flip(); // friend std::ostream& operator<<(std::ostream& s, const Card& aCard); private: rank m_Rank; suit m_Suit; bool m_IsFaceUp; }; int Card::GetValue() const { int value = 0; if (m_IsFaceUp) { value = m_Rank; if (value > 10) { value = 10; } } return value; } void Card::Flip() { m_IsFaceUp = !m_IsFaceUp; } #endif