-
240109 클래스 소멸자 가상화기록 2024. 1. 9. 23:54
상속할 부모클래스의 소멸자는 가상화 해야한다!!
문제점)
프로젝트를 진행할 때 메모리관리를 가능한 선 내에 철저하게 하고싶어
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
이 매크로 함수를 통해 leak(release)하지 않은 메모리를 확인한다.
leak이 발생하는 것을 확인하였다.
문제 원인)
서버오브젝트와 클라이언트 오브젝트 클래스는 NetObject를 상속받게 만들었고
NetObject 상태로 Release하였기 때문에 소멸자가 부모 클래스만 작동하였던것이다.
해결)
NetObject의 소멸자를 가상화시켜준다!
'기록' 카테고리의 다른 글
240113 [IOCP] thread 작동 방식 이해하기 (0) 2024.01.13 240112 C++ 백준 런타임에러(NZEC) (1) 2024.01.12 240107 로컬 호스트 서버 연결해보기 (0) 2024.01.07 240107 windows.h와 winsock2.h 재선언으로 인한 문제 (0) 2024.01.07 240104 BSP Algorithm을 이용한 Random Map Generator (1) 2024.01.04