だから私は自分の機能の1つに問題があります。プログラム (C++) がゲームをプレイし、非常に多くのプレイヤーがテーブルに座っています。play 関数が呼び出されるたびに、ゲーム内のプレーヤーがコンソールに表示されます。呼び出されるたびに、プレーヤーを順番に表示する必要があります。最後のプレーヤーに当たった後、リスト/テーブルの先頭に戻ります。void 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 がターンを実行し、ただし、その直後にクラッシュします。では、私のコードの何が問題なのですか? これを書く良い方法はありますか?