我试图创建一个Deck
类只有一个领域的构造函数:一个指向node
类对象。 A node
有两个字段,一个卡对象和一个指向另一个节点(链表)的指针。链表构造
我试图建立使用这种构造一副牌,但是当我打印出来,只显示一张卡,导致我相信,构造函数不能正常工作。
我的印刷方法工作得很好,我和其他的例子进行了测试。我故意用同一张卡片两次启动卡组,之后我会将其删除。
Deck::Deck(){
node* phead;
phead = new node(Card("A","Heart"));
node* curr;
node* next;
curr = phead->next;
string suits[4] {"Heart", "Spade", "Club", "Diamond"};
string values[13] {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
for(int i = 0; i < 4; i++){
for(int j = 0; j < 13; j++){
curr = new node();
curr->card = Card(values[j], suits[i]);
next = curr->next;
curr = next;
}
}
curr=NULL;
deck = phead;
}
提示:你不是你的节点之间的连接正常。 – SomeWittyUsername
变量声明末尾不应该是'curr = phead' – macroland