달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

< 요구 사항 >

 - 만든 자료구조의 디버깅( 조사식 등 )을 위해 내부를 보려 해도 볼수 없게 되는 상황

 - 예를 들어 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

Posted by 위너즈
|