|
invalid pointer operation
이것이 문제를 푸는 실마리가 되겠네요..
올바르지 못한 참조로 포인터를 사용하려 한 것 아닌지요?
일단 포인터 변수의 초기화 부분을 살펴보세요..
어떠한 객체나 변수를 가리키는지를 잘 확인하시고..
혹시나 생성되지 않은 메모리를 해제하려고 하는것은 아닌지도 살펴보세요..
그래도 잘 모르겠다 싶으시면..
디버깅을해보세요..
포인터 사용한 부분에다가.. 브포(브레이크포인트)를 걸고..
돌려보세요
p.s 일반적으로 포인터를 사용할때에 int *p = new int 이런식으로 포인터 변수 생성과 동시에
메모리를 가르키지 않는다면 int *p = NULL 로 초기화해주시는것이 안전합니다.
저렇게 해 주지 않으면.. p 에는.. 메모리의 아무 위치를 가르키게 되지요...
그러다가 delete 를 해버리면.. 에러내뱉습니다. -_- NULL 은 delete 해도 상관이 없거든요..
말 그대로 비어있으니.. -_-
그냥 참고였습니다.. (다 아시겟지만..노파심에.. -_- 전 초보라..)
|