커스터마이징한 자료구조 등의 내부를 보기 위한 디버깅방법 [출처] 커스터마이징한 자료구조 등의 내부를 보기 위한 디버깅방법|작성자 손돌
Programming/Debugging 2013. 9. 5. 17:43< 요구 사항 >
- 만든 자료구조의 디버깅( 조사식 등 )을 위해 내부를 보려 해도 볼수 없게 되는 상황
- 예를 들어 HashMap을 하나 만들었는데 std::hash_map 을 디버깅 할때 처럼 안에 들어있는 정보를 조사식에서 보고 싶을 경우
< 해결 방법 > Visual Studio 2005 환경
- c:\Program Files\Microsoft Visual Studio 8\Common7\Packages\Debugger\autoexp.dat
- 위의 파일을 메모장 등에서 읽어보면 무언가 스크립트로 짜져 있는 것을 볼수 있습니다.
autoexp.dat : 이 파일에 보시면 std::vector 등의 STL 관련해서 STL이 어떻게 디버깅하고 있는지 알수 있습니다.
//====================
// std::vector
//====================
std::vector<*>{
children
{
#array
{
expr : ($c._Myfirst)[$i],
size : $c._Mylast-$c._MyFirst
}
}
}
* 커스터마이징된 자료구조( CVector ) 를 만들었고.. 이 것을 디버깅시에 보고 싶은 경우.........
//====================
// CVector
//====================
CVector<*>{
children
{
#array
{
expr : ($c.m_pBase // 실제 배열 포인터 정보
size : $c.m_uiCount // 현재 자료 갯수
}
}
}
[출처] 커스터마이징한 자료구조 등의 내부를 보기 위한 디버깅방법|작성자 손돌
출처 : http://blog.naver.com/sondool91?Redirect=Log&logNo=140092292363