저는 C++을 처음 사용하며 현재 new
과 delete
키워드를 공부하고 있습니다. 내가 & ppaa를 사용하여 위의 ppaa을 삭제할 수없는 이유 메모리 위치가있는 C++ 삭제 연산자
Point ppaa = *new Point;
Point *p = &ppaa;
ppaa.xpos = 1;
ppaa.ypos= 3;
delete &ppaa;
delete p;
당신이 설명해 주시겠습니까? 삭제가 포인터에서만 작동 할 수 있다는 것을 알고 있지만 실제로 메모리 위치이므로 위의 이유가 이해되지 않습니다. 유사한 질문을 검색하면 첫 번째 행에서 발생하는 복사 작업과 관련이있는 것으로 보이지만 좋은 설명이 없습니다.
메모리가 누출됩니다. 도움이 될 수 있습니다 : http://stackoverflow.com/questions/8839943/why-does-the-use-of-new-cause-memory-leaks/8840302 – Pubby
Pubbu 감사합니다, 그것은 많이 도움이되었습니다. Als의 대답에 게시 된 추가 질문을 살펴 보시기 바랍니다. – noclew