Я обнаружил утечку памяти в своем коде, но не могу понять, как это исправить.
Когда я зациклился вот так:
for (;;)
{
physx::PxMaterial *pMaterial = pPhysic_physicsSDK->createMaterial(0.5f, 0.5f, 0.5f);
pMaterial->release();
}
У меня переполнение памяти. Память не освобождает. Как правильно выпустить?
Я пытался удалить егоdelete pMaterial
«, но доступ для удаления не предоставляется.
Ты никогда не отрываешься от for
петля. Он никогда не перестанет работать, если вы не позвоните break;
,
for (;;)
{
physx::PxMaterial *pMaterial = pPhysic_physicsSDK->createMaterial(0.5f, 0.5f, 0.5f);
pMaterial->release();
if(**something is satisfied**)
break;
}
Это остановит переполнение памяти, потому что это в конечном итоге оставит for
петля.