디버그 빌드 옵션
최적화가 강하면 변수 값과 줄 이동이 예상과 다를 수 있습니다.
-g, /Zi, breakpoint, step, watch, assert()는 std::cout 추적보다 정밀하게 오류 지점을 좁힙니다.
최적화가 강하면 변수 값과 줄 이동이 예상과 다를 수 있습니다.
반복문 안에서는 조건부 중단점이 시간을 줄입니다.
calculate_sum 같은 함수의 경계와 내부를 구분해 살핍니다.
NDEBUG 설정에서는 assert가 사라질 수 있다는 점을 기억합니다.