ゲームの現在のプレーヤーのリスト コンテナーがあり、現在のターンを別の整数で追跡します。プレイヤーが去ったら、プレイヤー リストから削除します。ただし、ターン値も調整する必要がある場合があります (プレイヤーが離れるとき)。
特定のプレーヤーのインデックスがターン値よりも小さい場合、ターン変数をデクリメントする必要があることがわかりました。例えば
1) A B C(t=2) D E => B leaves
2) A C(t=1) D E
B のインデックスはターン前だったので、ターンが減少します。逆に
1) A B C(t=2) D E => D leaves
2) A B C(t=2) E
ここでは、ターン値を変更する必要はありません。なぜなら、去ったプレイヤーは AFTER ターンだからです。
だから私の質問は、リスト内の特定の文字列のインデックスをどのように決定できますか? (ノンブロッキング)。これが不可能な場合、別の解決策はありますか?