내 프로그램 메모리 누수를 동적으로 생성 된 콘텐츠 중 하나로 좁혔습니다. 누수는 매우 작고 문제를 일으키지 않지만 수정하는 것이 가장 좋습니다. 다음은 코드입니다.
//allocate row memory:
dynamicNodeArray = new int *[r];
//allocate column memory:
for(int i = 0; i < r; i++)
{
dynamicNodeArray[i] = new int[c];
}
//...
//allocate memory for nodes (array of structs):
node* nodes = new node[r*c];
//...
//clean up:
for(int i = 0; i < r; i++)
{
delete dynamicNodeArray[i];
}
delete dynamicNodeArray;
free(nodes);
delete nodes;
delete dynamicNodeArray;
delete [] dynamicNodeArray;
로 할당 한 것과 같아야합니다 new[]
.
또한 free()
할당 한 항목 new()
또는을 호출하지 마십시오 new[]
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다