동적메모리 해제
// STL Clear시 해당 리스트에서 동적으로 할당된 객체는 자동 소멸되지 않는다.. 알아서 해제하자..
void CEngineDoc::Memory_Release(void)
{
//플레이어 리스트 해제
for(vPitr=m_Player_List.begin(); vPitr != m_Player_List.end(); vPitr++)
{
CPlayer *pItr = *vPitr;
for(int i=0;i< pItr->iCount;i++)
{
for(int j=0;j < pItr->pSpriteStruct[i].iCount; j++)
{
if(pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture)
{
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture->Release();
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture = NULL;
}
}
}
delete (pItr);
}
m_Player_List.clear();
for(vPitr=m_Player.begin(); vPitr != m_Player.end(); vPitr++)
{
CPlayer *pItr = *vPitr;
delete (pItr);
}
m_Player.clear();
동적메모리 해제
//NPC 리스트
for(vNitr=m_NPC_List.begin(); vNitr != m_NPC_List.end(); vNitr++)
{
CNPC *pItr = *vNitr;
for(int i=0;i< pItr->iCount;i++)
{
for(int j=0;j < pItr->pSpriteStruct[i].iCount; j++)
{
if(pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture)
{
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture->Release();
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture = NULL;
}
}
}
delete (pItr);
}
m_NPC_List.clear();
for(vNitr=m_NPC.begin(); vNitr != m_NPC.end(); vNitr++)
{
CNPC *pItr = *vNitr;
delete (pItr);
}
m_NPC.clear();
//몬스터 리스트
for(vMitr=m_Monster_List.begin(); vMitr != m_Monster_List.end(); vMitr++)
{
CMonster *pItr = *vMitr;
for(int i=0;i< pItr->iCount;i++)
{
for(int j=0;j < pItr->pSpriteStruct[i].iCount; j++)
{
if(pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture)
{
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture->Release();
pItr->pSpriteStruct[i].pSpriteInfo[j].m_pTexture = NULL;
}
}
}
delete (pItr);
}
m_Monster_List.clear();
for(vMitr=m_Monster.begin(); vMitr != m_Monster.end(); vMitr++)
{
CMonster *pItr = *vMitr;
delete (pItr);
}
m_Monster.clear();
//아이템은 아직 처리안함. 제대로 설계한 후에 stl 코드 넣기
}내가 듣고싶은 음악
내가 들려주고싶은 음악

Category


Calendar


Recent Article


Recent Comment


Counter




