以下是我程序中的快速代码片段(脱离上下文,但问题应该没问题)
Card::Card(int value, char suit)
{
value = value;
suit = suit;
}
Card cards[52];
Card c = new Card(RANKS[i],SUITS[j]);
cards[size] = c;
这里我收到一个错误,因为新卡(x,y)返回一个指向卡的指针,所以它应该是
Card* c = new Card(RANKS[i],SUITS[j]);
如果我想最终只使用卡片对象,该怎么办?我的印象是我可以使用地址运算符执行此操作并执行类似的操作 卡[size] =& c;
但编译器似乎并不喜欢这样。谁能帮我?应该是相当简单的,不幸的是我的C / C ++有点生疏。
谢谢!
答案 0 :(得分:2)
如果我想最终只使用卡片对象,该怎么办?
使用:
int cardIndex = <some card index>
cards[cardIndex] = Card(RANKS[i],SUITS[j]);;