Program/C,C++,MFC
extern 사용시 유의점
훈이아제
2011. 1. 31. 15:36
이것이 정확히 어떤 역활을 하는 지는 나도 잘 모른다.
단지, 일반적으로 C++ 에서 클래스를 넘어서 Data를 공유하는 방법으로 ‘extern’을 많이들 사용한다.
그러나 공유시에는 최상위에 놓고 한곳에서 첫선언을 하여 사용해야지 여러곳에서 선언시는 컴파일시 오류가 발생하고 발생하지 않았다 하더라도 서로다른 메모리를 열어서 사용하므로 공유가 정상적으로 되지 않는다.
단지 미리 선언하여 사용할시 같은 것을 서로 중첩되지 않게하기 위하여 사용한 extern이기에 선언이 중첩될때는 무용지물이 되게 되있으므로 참고하여 사용하더록 한다.
그리고 공유시에는 처음 선언한 부분이 한곳이 되도록 꼭 체크하여야 한다.
클래스안에다 구조체를 선언하여 사용시에는 서로 다른 형태로 공유가 이루어 질수 있으니 유의하여 사용하자.