char** pArrStr = new char*[10];
for (int i = 0; i < 10; i++) {
 pArrStr[i] = new char[20];
 sprintf(pArrStr[i], "Hello World - %d", (i + 1));
}

for (int j = 0; j < 10; j++) {
 cout << pArrStr[j] << endl;
 delete [] pArrStr[j];
}
delete [] pArrStr;
// [] 하지 않았을때 소멸자가 한번만 실행됨.
// 원시타입일 경우 차이 없음.

malloc 도 위와 같음.

추가.
동적할당 메모리 누수 체크

stdafx.h 파일과 같이 모든 소스에서 include 하는 파일에 추가.

#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#define new new(_NORMAL_BLOCK, __FILE__, __LINE__)

main() 에 추가.
_CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );

Posted by 창신다이

BLOG main image
오랫동안 꿈을 그리는 사람은 마침내 그 꿈을 닮아 간다. -앙드레 말로- by 창신다이

공지사항

카테고리

분류 전체보기 (248)
공장이야기 (115)
Education (30)
회사이야기 (19)
일상 (73)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :