2012년 10월 19일 금요일

[C++] assert() 의 사용


1. 알아 둘 내용
assert() 는 견고한 프로그래밍을 위해 디버깅용으로 많이 사용 한다고 한다.
실행 결과에서 처럼 소스의 어느 부분에서 에러가 발생 하였는지 조금 더 자세히 알 수 있다.
NDEBUG 가 설정 되어 있으면 assert() 부분을 건너 뛴다고 한다. NDEBUG 알아 볼 것.


2. 소스 내용
#include <iostream>
#include <cassert>  /* C++ 에서 assert() 를 사용 */

using namespace std;

int main() {

 cout << "program start" << endl;

 int x = 1;

 assert(x == 2);

 cout << "program end" << endl;

 return 0;
}


3. 실행 결과

program start

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
Assertion failed!

Program: D:\study\workspace\cpp_exam_2\Debug\cpp_exam_2.exe
File: ..\src\cpp_exam_2.cpp, Line 19

Expression: x == 2

댓글 없음 :

댓글 쓰기