레퍼런스 매개변수 메모리 깨짐 현상
글쓴이: yangkuisuk / 작성시간: 금, 2011/11/18 - 4:39오후
kuisuk 번호: 874465 추천:0 / 읽음:0
다음과 같은 함수를 만들었습니다.
void func(object& o) { ......... }
그리고 다음과 같이 함수를 호출 합니다.
object o; o.setX; // 객체에 값 할당 .............. func(o);
그리고 나서 디버깅으로 값을 확인해보면
함수에 호출 되기전에 o의 값은 정상적인데 함수에 들어가서
void func(object& o)<------------이곳을 브레이크 포인트로 잡고 o의 값을 확인해보면 값이 깨져 있습니다. { ......... }
매개변수를 레퍼런스 타입으로 넘기기 때문에 복사생성자는 만들지 않았습니다.
혹시나 해서 만들어도 마찬가지이구요...
무슨 원인때문에 이런 현상이 생길까요? 제 환경은 windows7 개발툴은 Visual Studio2005 입니다. 32비트 기반입니다.
혹시 아시는 분들 있나요? 알려주시면 감사하겠습니다.
Forums:
이 코드만 보면 당연히 잘못될 이유가
이 코드만 보면 당연히 잘못될 이유가 없지요.
디버거로 보지 마시고 그냥 cout 에 출력해서 확인해보시고 그래도 문제가 있다면
코드를 단순화하되 같은 문제가 생기도록 해서 올려주세요.
xp vs2005에서 테스트해봤습니다.
잘되요...
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
중복게시물이군요.
.
해당 코드만으로는
증상 판단을 할 수가 없네요.
www.gilgil.net
댓글 달기