lesson_3 #3
|
@ -1,8 +1,44 @@
|
|||
#ifndef EXERCISE_4_HPP_
|
||||
#define EXERCISE_4_HPP_
|
||||
|
||||
#include <iostream>
|
||||
|
||||
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) { }
|
||||
jediserg
commented
Не вижу смысл инициализации по умолчанию первых двух параметров, это не часто используемое и не основное значение Не вижу смысл инициализации по умолчанию первых двух параметров, это не часто используемое и не основное значение
|
||||
|
||||
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
|
||||
jediserg
commented
а туз может два значения иметь) а туз может два значения иметь)
|
||||
{
|
||||
int value = 0;
|
||||
if (m_IsFaceUp)
|
||||
{
|
||||
value = m_Rank;
|
||||
if (value > 10)
|
||||
{
|
||||
value = 10;
|
||||
}
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
void Card::Flip()
|
||||
{
|
||||
m_IsFaceUp = !m_IsFaceUp;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -15,10 +15,9 @@ void ex_4();
|
|||
|
||||
int main()
|
||||
{
|
||||
// ex_1();
|
||||
// ex_2();
|
||||
ex_1();
|
||||
ex_2();
|
||||
ex_3();
|
||||
ex_4();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -129,8 +128,3 @@ void ex_3()
|
|||
* [c >= a] 0 >= 3/9 is false
|
||||
*/
|
||||
}
|
||||
|
||||
void ex_4()
|
||||
{
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
вообще насколько я помню если явно не прописанно значение, то гарантии нет что значения будут нужные. Если спользуются значения enum, лучше все забить. Но я бы не использовал чтобы сущности не путались. А сделать метод например
size_t rank2score(rank r) {
static std::unordered_map<rank, size_t> scores = {
{TWO, 2},
.....
};
}