因此,我的一项功能遇到了一些麻烦。程序(用 C++ 编写)玩游戏,有很多玩家坐在桌旁。每次调用我的 play 函数时,它都应该向控制台显示游戏中的玩家。每次调用它都应该按顺序显示玩家。在它击中最后一个玩家后,它将从列表/表格的开头重新开始。无效的 CircleList::play()
LinkedListOfPlayersNode *p=(*pFront).pNext;
if (p->pData!=NULL)
{
cout<<p->pData->getName()+" takes a turn\n";
pLastPlayer = pLastPlayer->pNext;
}
else
{
cout<<"There are no players. Please ADD a player.\n";
}
}
所以假设我们添加了 A、B 和 C。当你使用 PLAY 命令时,C 应该转弯,然后是 B,然后是 A。现在使用上面的代码,它会显示 C Takes a Turn,但是,它在那之后立即崩溃。那么我的代码有什么问题?有没有更好的方法来写这个?