이럴때 해결 방법은 두 가지이다.
1. C 라이브러리 수정
C 라이브러리의 헤더 파일을 아래와 같은 매크로로 감싸준다.
#ifdef __cplusplus
extern "C" {
#endif
... your C header file ...
#ifdef __cplusplus
}
#endif
extern "C" {
#endif
... your C header file ...
#ifdef __cplusplus
}
#endif
2. C++ 코드 수정
C 라이브러리의 파일을 변경할 수 없는 경우(?)에는 C++ 코드를 변경하면 같은 효과를 얻을 수 있다. 아래와 같이 C 라이브러리 헤더 파일을 인클루드하는 코드의 전후에 위와 동일하게 매크로를 추가한다.
#ifdef __cplusplus
extern "C" {
#endif
#include <potracelib.h>
#ifdef __cplusplus
}
#endif
extern "C" {
#endif
#include <potracelib.h>
#ifdef __cplusplus
}
#endif

comments
comments rss (+댓글 쓰러가기)