태그: cpp

문서설명
C++ export C++의 옛 기능 중 하나로, C++98에서 처음 추가된 이래 구현체가 하나 밖에 없었고(Comeau) 그마저도 표준화 위원회에서 제발 빼 달라고 사정 사정을 하여 C++11에서 사라진 기능. 그 선조격인 C와 마찬가지로, C++는 전통적으로 매 소스 유닛을 컴파일할 때마다 그 소스가 참조하는 모든 "정의"(즉, 함수의 프로토타입이나 타입 정보들)를 매번 읽어 들어야 한다. 그러나 Cpp템플릿은 정의와 더불어 "선언"(즉, 함수의 몸체)도 매번 읽어서 컴파일해야 하는데, 이 때문에 복잡한 템플릿의 사용은 컴파일 시간을 뻥튀기하는 일등 공신으로 잘 알려져 있었다. export는 이 문제를 템플릿의 정의와 선언을 분리할 수 있도록 하여 해결하려고 했던 시도이다. 즉 헤더 단에는 export를 붙여 놓은 템플릿 정의만 써 놓고, 구현체가 이 정의를 다른 변환 유닛(translation unit)에 있는 실제 선언과 연결시킬 수 있는 가능성을 열어 놓은 것이다.…

도쿠위키DokuWiki-custom(rev 9085d92e02)을 씁니다.