<分区>
class Card
{
private:
int face;
char suit;
public:
Card();
Card(char, int);
int getRank() { return face; }
char getSuit() { return suit; }
void setFace(int cardFace) { face = cardFace; }
void setSuit(char cardSuit) { suit = cardSuit; }
};
Card::Card(char cardSuit, int cardFace)
{
face = cardFace;
suit = cardSuit;
}
class Player
{
public:
Player();
vector<Card>allCards;
vector<Card>hand; //holds 7 cards
};
Player::Player()
{
std::random_device seed;
std::mt19937 rng(seed());
for (int i = 1; i <= 13; i++)
{
Card c1('D', i), c2('C', i), c3('H', i), c4('S', i);
allCards.push_back(c1);
allCards.push_back(c2);
allCards.push_back(c3);
allCards.push_back(c4);
}
shuffle(std::begin(allCards), std::end(allCards), rng);
for (int x = 0; x < 7; x++) {
hand[x] = allCards.back(); <---------- Error here
allCards.pop_back();
}
}
我正在尝试使用类创建游戏,有时我必须为每个玩家分配 7 张牌,这对我来说并不适用,我正在尝试管理它。
我收到以下错误
Error: Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)