의 각 반복에 대해, 구조에 대한 포인터를 메모리를 해제하려면 코드에 다음과 같은 장소에 참여했다어떻게 구조를 가지고 루프
typedef struct {
unsigned ccc;
unsigned ddd;
unsigned aaa;
unsigned bbb;
string ddd;
} objinfo;
:
objinfo obj_tmp
multimap<string, objinfo> obj_map;
multimap<string, objininfo>::iterator it;
std::pair<multimap<string, objinfo>::iterator, multimap<string,objinfo>::iterator> Krange;
각 루프 나는 오래된 objinfo, obj_map을 던져서 새로운 객체 정보를 대체해야 할 것이다. obj_map.clear()를 사용하여지도를 정리할 수 있습니다.
구조체, 포인터 및 이전 객체에 대한 맵과 관련된 메모리를 해제하려면 어떻게해야합니까? 각 루프 이후에 ?
정말 구조에 대한 메모리 할당 방법에 따라 다릅니다. 구조체가 스택 상에있을 수 있으므로 수동 메모리 관리가 필요 없습니다. –
자동 개체 및 메모리 관리를 사용하면 자동으로 수행됩니다. –
고마워요! 내 이해는 objinfo obj_tmp로 개체 구조체를 선언하면 스택에있다. 하지만 "new"를 사용하면 "delete"(힙에 있음)와 쌍을 이루어야합니다. 맞습니까? 그럼 포인터에 대해서? 그 메모리는 또한 각 루프 (루프 내에서 내 선언을 모두 가정) 이후에 출시됩니까? – user1830108