我正在尝试创建一个玩家手类(例如在纸牌游戏中)。draw 方法将绘制另一张牌,而 showHand 方法应显示手中的当前牌。我试图在构造函数中初始化指针数组,但我不知道如何做到这一点(这是我相信我的问题的根源)。尝试现在注释掉 this->jon={}; 给出此错误:“错误:将''分配给'Card * [12]'时的类型不兼容”
***目前在 showHand 中,如果我只是尝试 cout jon[i]->getRank() 就会弹出一堆废话;但是 Draw 方法效果很好。
class myHand{
public:
myHand(){
this->size=0;
//this->jon={};
}
void Draw(Card anyCard) {
if(size>11) {
cout<<"You can only have a maximum of 12 cards in your hand at a time"<<endl;
return;
}
jon[size]=&anyCard;
cout<<"HERE IS ANYCRD:"<<jon[size]->getRank()<<jon[size]->getSuit()<<endl;
size++;
}
void showHand() {
//DOESNT WORK HERE
}
void Place(Card* anyCard) {
}
private:
int size;
Card* jon[12];
};