https://gall.dcinside.com/board/view/?id=programming&no=1956593&page=2
앞에 올린 visual studio만 0 나오고 다른 컴파일러는 정상 출력 되는 신기한 코드의 결론.. 댕글링 포인터 입니다.
visual studio가 옳습니다. visual studio는 포인터랑 메모리를 둘 다 싹 밀어 주네요.
크래쉬 나면 좋겠지만 그나마 잘못 된 표시를 내는 갓쥬얼 스튜디오...!
다른 컴파일러들은 해제한 메모리에 아무~으런 표시 없이 읽어버린 것!
다른 언어 쓰시는 선생님들은 이런 문제 없으신가요 ㅠㅠ?
// string 에 &가 문제다. 이거 왜 해제할 메모리를 참조로 받냐?
const string& temp = Q.front();
Q.pop();
다른 것들은 저게 된다는게 먼가 더 신기하네
코드가 한페이지 짜리라서 정말 다행 이었습니다. 만약 몇만라인 짜리 코드였으면 영문도 모르고 0 뿜어내는 몇만 라인 짜리 코드를 보고 되었을 거에요....
다른언어 쓰면 Gc가 관리해줘서 참조하는 변수가 있으면 해제안됨 ㅋ