아직도 printf로 일일히 찍고 있니….?

스크린샷 2022-12-31 오후 11.11.36.png

현재 cli라는 클래스에는 여러 변수들이 들어가있다.

함수호출도중 에러가 발생하는데 아무래도 안에 들어있는 값을 확인해야 원인을 파악할 수 있을 것 같다.

이럴때 보통 가장 쉽게 사용하는 것이 printf()로 클래스의 현재값을 해당 줄에서 표시해보는 것이다.

확인하려는 값이 적거나 구현이 복잡하지 않은 프로젝트에서는 그렇게 하여도 무방하다.

하지만 한 클래스에 100개의 멤버 변수가 복잡하게 각자의 값을 시시각각 바꿔가며 동작하고 있다면 어떨까?

그 클래스가 100줄이 넘는 함수에서 한줄마다 바뀌는 상태를 실시간으로 확인할 수 있을까?

아마 무척 고되고 지루한 작업일 것이다.

그렇지만 VSC에 디버거를 셋팅해둔다면, 여러분은 이제 두려울 것이 없다.

스크린샷 2022-12-31 오후 11.15.42.png

이런식으로 특정 행을 실행할때마다 바뀌는 [변수]값을 확인할 수 있으며,

에러가 발생한 경우 어디에서 그 문제가 발생하였는지 [호출스택]에서 확인할 수 있다.

스크린샷 2022-12-31 오후 11.17.42.png

또한 디버거탭에서 제공하지 않는 정보도 [디버그 콘솔]을 통해 원하는 값을 print해서 확인하는 것도 가능하다.

그렇다면 이제 VSC에서 디버거환경을 셋팅해보자.