1. 코드 분석을 지원하지 않는 VS 버전에서 사용하기

VS2010의 경우는 프리미엄 버전부터 코드 분석기능을 사용할 수 있습니다(참고로 VS2010부터는 가장 아래가 프로페셔널 버전입니다).

VS2008, VS2005 Standard, Pro, Teamsuit 버전으로 나누어지는데 이중 Teamsuit 버전만 코드 분석 기능을 사용할 수 있습니다. Teamsuit의 경우 보통 TFS를 사용하는 경우 사용하는 버전으로 Pro에 비해서 엄청나게 비쌉니다. 그래서 VS2008, 2005를 사용하시는 분들은 코드 분석 기능을 사용하지 못하는 경우가 대다수라고 생각합니다.

 

그러나 VS 2008, 2005를 사용하는 분이라면 약간의 수고를 들이면 코드 분석 기능을 사용할 수 있습니다. 사용 방법은 http://gpgstudy.com/forum/viewtopic.php?topic=22115 를 참고 하시기 바랍니다. ( GPGStudy에 있는 링크는 깨어져 있습니다. 그래서 http://nsjokt.springnote.com/pages/2547456 를 보시기 바랍니다)

VS2010도 비슷한 방법으로 하면 될 것 같은데 해보지 않아서 알 수가 없습니다.



2. DataTip

DataTip은 디버깅을 할 때 도움일 될만한 것을 메모를 남길 수 있습니다. 위치 이동도 자유롭게 할 수 있습니다.


메모는 디버깅을 할 때만 보이므로 코딩할 때 전혀 불편을 주지 않습니다.

그리고 그림의 빨간 사각형에 표시된 형태일 때는 DataTip이 삽입 되어 있다는 것을 표시해줍니다.

삽입 표시가 남는 경우는 디버깅이 끝난 이후 표시 부분에 마우스 포인터를 가져가면 디버깅 때 남겨 놓았던 메모를 볼 수 있고 또 앞선 디버깅에서 어떤 값이 저장되었는지 표시해 줍니다.


위 그림의 빨간 사각형 그림처럼 되면 DataTip이 표시 되었다는 것이 디버깅을 하지 않을 때는 표시 되지 않습니다.




저작자 표시
신고
by 흥배 2010.09.17 09:00


KGC10 - Visual C++10과 디버깅
View more presentations from jacking.



오늘 101호실에서 5시에 강연을 했습니다. 그런데 강연을 매끄럽게 하지 못해서 참석하신 분들에게 죄송스럽네요. 대부분 Demo 위주로 할 예정이라고 너무 쉽게 생각하고 연습을 제대로 하지 않아서 시간 관리도 제대로 못했고 말 연결도 매끄럽지 못했습니다. 반성하겠습니다.

 

오늘 제대로 못한 부분은 너무 뒷북 치는 것 같지만 블로그를 통해서 전달하도록 하겠습니다. 다음에는 연습 많이 하겠습니다. 그리고 주제도 좀 더 흥미로운 것으로 하겠습니다. 이번 강연은 내용이 많이 평이했던 것 같네요. 오히려 회사에서 사용하고 있는 유닛테스트나 자동테스트, 덤프 파일 관리 등을 이야기 하는 것이 더 좋았지 않았을까 생각합니다.

 

앞서 이야기 했듯이 오늘 다 못한 이야기는 블로그를 통해서 꼭 전달하겠습니다.


오늘 강연에서 사용했던 Demo 소스 파일도 첨부합니다. 참고로 Demo_08이 google-breakpad를 사용한 프로젝트인데 Demo_08를 빌드하기 위해서는 google-breakpad를 설치후 Demo_08의 솔루션 속성 정보에서 헤더파일과 라이브러리 설정을 수정해야합니다.



[ PT 문서의 오타 ]

문서는 컴파일이나 디버깅 할 수 없어서 버그를 잡지 못했습니다. -_-;;

1. strcpy같은 보안성이 약한 함수를 매크로로 일괄적으로 보안성 높은 함수로 바꾸어주는 매크로의 이름에 오타가 있습니다.

_CRT_SECURE_CPP_OVERLOAD_STANDAD_NAMES    (X)

_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES  (0)

그리고 이 매크로는 동적버퍼의 경우는 위험할 수가 있다고 하네요. 관련 MSDN 글이 한글은 없으니 제가 조만간 따로 번역해서 올리겠습니다.

저작자 표시
신고
by 흥배 2010.09.15 23:26



위와 같이 디버깅 할 때 포인터 배열 p을 내용을 보고 싶을 때 Watch window Quickwatch window를 통해서 p를 보면 배열의 첫 번째 값만 보입니다.

 


1. p의 모든 값을 보고 싶을 때는 ‘변수, 배열 크기’Watch window에 입력합니다.

 

 

 

 

2. 특정 위치의 값만 보고 싶다면 '(변수 + 인덱스)'

 

 


 

Visual C++ 6 ~ 10까지 다 가능합니다.


출처 : http://support.microsoft.com/?scid=kb%3Ben-us%3B198953&x=8&y=16

 

저작자 표시
신고
by 흥배 2010.02.11 08:30
| 1 |