|
try..catch 를 사용해도 파일이 없는 경우에는 메모리 누수가 발생합니다.
그래서 먼저 파일이 있는가부터 확인해야 합니다.
if(FileExists(filename))
{
TFileStream *file;
try
{
file = new TFileStream(filename, FILE_OPEN_MODE);
작업 수행
}
catch(...)
{
delete file;
}
}
이런 식으로 해주면 파일이 없을 경우에도 메모리누수 문제가 발생하지 않습니다.
|