我在代码中发现内存泄漏,但我无法弄清楚如何修复它。
当我像这样循环时:
for (;;)
{
physx::PxMaterial *pMaterial = pPhysic_physicsSDK->createMaterial(0.5f, 0.5f, 0.5f);
pMaterial->release();
}
我有内存溢出。记忆没有释放。如何发布它?
我尝试将其删除" delete pMaterial
",但未授予删除权限。
答案 0 :(得分:0)
你永远不会打破for
循环。除非您致电break;
,否则它永远不会停止运行。
for (;;)
{
physx::PxMaterial *pMaterial = pPhysic_physicsSDK->createMaterial(0.5f, 0.5f, 0.5f);
pMaterial->release();
if(**something is satisfied**)
break;
}
这会停止内存溢出,因为它最终会离开for
循环。