|
안녕하세요.
배열 Delete 방법이 틀린 것 같은데요.
배열 할당부분의 경우, delete []sImage;
이런식으로 사용하셔야 합니다.
그럼 수고 하세요.
아수라장 님이 쓰신 글 :
: 메모리를 할당했다가 지우는 작업을 하고 있는데 반환이 될때가 있고 안될 때가 있습니다.
:
: 어떤 부분에 문제가 있는지 감이 안 잡히네요.
:
: 아래 소스는 어디에 문제가 있는지 테스트 하던 소스입니다.
:
: 테스트 환경은 빌더2007에 OS는 XP와 7에서 테스트 해봤습니다.
:
: 도움 부탁드립니다.
:
: //////////////////////////////////////////////////////////////
:
: TStringList *list = new TStringList;
: for(int i=0; i<100; i++){
: MEMORYSTATUS memoryStatus;
:
: GlobalMemoryStatus(&memoryStatus);
: list->Add("시작 , " + AnsiString(memoryStatus.dwAvailVirtual));
:
: BYTE *sImage = new BYTE[2000*2000*3];
:
: GlobalMemoryStatus(&memoryStatus);
: list->Add("생성 , " + AnsiString(memoryStatus.dwAvailVirtual));
:
: delete sImage;
: sImage = NULL;
:
: GlobalMemoryStatus(&memoryStatus);
: list->Add("해제 , " + AnsiString(memoryStatus.dwAvailVirtual));
: }
: list->SaveToFile("d:\\test.txt");
: ////////////////////////////////////////////////////////////////////
|