operator new 함수가 궁금합니다.
장난감
2023.04.01
static void* operator new(size_t size);
라고 호출하면 기냥 new 객체 요로콤 호출하면 될꺼 같은데요
static void* operator new(size_t size,char const *file,int32_t line)
이렇게 정의되어 있으면 어케 호출 해야 하는지요
new 객체명(인자1,인자2) 이렇게 ?? 그럼 생성자 하고 짝이 안 맞을꺼 같은데...요
알려주시면 감사하겠습니다.
모 소스를 분석하다가 이런것을 만났네요
static void delete(void *p,char const* file,int32_t line); 이렇게 delete 도 선언이 되어있네요.
-
한말글
우선 기초 C 공부를 하시는게 필요해 보이는데요?
일단 함수 이름이 말하는 것 처럼 new 와 delete 을 C 방식으로 구현한 듯 한데, 분위기는 malloc 과도 비슷하네요
대충의 예상은 메모리의 크기를 malloc 하되, 특정 파일 내부에 넣어주는 듯 합니다만, 정확한 것은 역시 소스를 봐야할 듯