Visual C ++ 2008 Express의 조건부 디버그
문제
Visual C ++ 2008 Express에서 코드를 디버그하는 방법이 있습니까? 예를 들어 특정 값에 대한 변수를 볼 수 있고이 값이 중단 될 때 깨지기 위해 변수를 볼 수 있습니까?
예를 들어, 나는 언제 깨고 싶다 x
becomes 5
. GDB에서는 중단 점을 설정 한 다음 x == 5
. Visual C ++ 2008 Express에서 가능한 경우 어떻게해야합니까?
해결책
Express Editions에는 지원이 구축되었지만 주변에는 다른 방법이 있습니다.
나는 비슷한 질문에 대한 또 다른 대답에서 이것을 발견했습니다.
#if DEBUG
if( node.Name == "Book" )
System.Diagnostics.Debugger.Break();
#endif
이 예는 이름이 속성이 "책"과 일치하면 중단 점이 발생 함을 보여줍니다.
원래 질문은 다음과 같습니다.
다른 팁
이것은 Visual Studio의 Express 버전에서는 불가능합니다. 그러나 전체 버전에서는 가능합니다.
Express에서도 이것을 할 수있는 것 같습니다. 적어도 여기에서 작동했습니다. 브레이크 포인트를 표시 한 후 마크를 마우스 오른쪽 버튼으로 클릭하고 "조건"을 설정했습니다 (그보다는 쉽지 않을 수 없습니다).
그런 다음 true로 평가하는 표현을 쓸 수 있습니다. 방금 이것을 보여준 나의 동료는 문자열을 비교하는 데 이것을 사용하는 몇 가지 문제가 있다고 말했지만 Ints를 사용한 간단한 비교에 매우 깔끔합니다.
그러나 다른 답변에서 말했듯이, 이것은 브레이크 코드를 직접 입력하는 것만 큼 빠르지 않습니다.
운이 좋은! 비주얼 스튜디오 2010 C/C ++의 Express는이를 지원합니다. 보다 방법 : 중단 점 조건을 지정하십시오.
나는 그것을 시도했다.