Papers/programming
extern "C"
tomato13
2009. 8. 20. 16:42
http://jimbo73.egloos.com/1486292
http://wiki.kldp.org/wiki.php/DocbookSgml/C++-dlopen
C와 C++는 컴파일시에 함수에 대한 심볼구성을 다르게 가져가기 때문에 C와 C++이 혼합된 코드에서는 extern "C"를 사용하여 컴파일 방식을 지정해준다.
사용예로는 C++로 구현된 library를 C코드에서 사용할 경우에 문제가 될 수 있다고 한다.(?) 즉, binary code에서는 변환된 심볼값으로 해당 함수를 찾게 되는데 C와 C++의 경우에 심볼생성 방식이 다르기 때문이다.