だから、テーブルの周りに座っているプレーヤーに関するプログラミングの割り当てに問題があります。プログラムは、ターンしたばかりのプレーヤーの後にプレーヤーを追加できる必要があります。割り当ては、どこでもリンクされたリストにデータを追加する方法を示すことになっています。そのため、PLAY コマンドを使用すると問題が発生します。これにより、1 人のプレイヤーが手番を行えるようになります。
たとえば、プレイヤー A、B、および C がいて、PLAY コマンドが実行されると、コンソールに「プレイヤー A がターンを実行します」と表示されます。もう一度PLAYを実行すると、「Player B takes a turn」と表示されます。
私のコードでは、リストの最初のプレイヤーがプレイできますが、次のノード/プレイヤーには移動しません。
void CircleList::play()
{
LinkedListOfPlayersNode *p=(*pFront).pNext;
if (p->pData!=NULL)
{
cout<<p->pData->getName()+" takes a turn\n";
p-> pNext; //My attempt to move to the next node.
}
else
{
cout<<"There are no players. Please ADD a player.\n";
}
}
したがって、これは明らかに機能しません。次のプレイヤーに移動する方法を誰か説明してもらえますか?
PS - コードは C++ です