Çok eski bir web tarayıcısı kullanıyorsunuz. Bu veya diğer siteleri görüntülemekte sorunlar yaşayabilirsiniz.. Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
Kesinlikle eleman silmeyi daha güvenli hale getirdik.
for (const auto& dwNPCVID : m_set_dwEnemyNPCVID)
{
...
else
{
RemoveEnemyNPC(dwNPCVID); // ❌ Bu sırada döngü yapılan container değiştiriliyor
}
}
Gdb çıktısına göre hatanın tam kaynağı burası.
for (const auto& … ...
Hata şundan kaynaklı oluyor. container üzerinde silme sırasında iterator çakışması sonucu aynı anda npcyi bulamıyor ya da elamanları düzgün takip edemiyor.
Şu şekilde değiştirip denermisin.
void CHARACTER::NotifyEnemyNPCs()
{
if (m_set_dwEnemyNPCVID.empty())
return;
for (auto...