프레임워크 오브젝트의 선택적 포함

일부 컴파일러(예: VxWorks)에서는 C++ 프레임워크에 정의되는 중복 템플리트 사본을 인스턴스화합니다. 이러한 중복 인스턴스화로 인해 훨씬 큰 결과 코드(실행 파일)가 생성됩니다.

템플리트 없이 관계를 사용할 수 있도록 유형이 지정되지 않은 컨테이너 세트(void*)가 대체 구현으로 제공됩니다. 유형이 지정되지 않은 컨테이너를 사용하는 관계에 대해 생성된 코드가 유형 안전 인터페이스를 제공합니다.

그러나 프레임워크 .h 파일을 통해 템플리트가 계속해서 포함되므로 유형이 지정되지 않은 컨테이너를 제공하면 문제점이 완전히 해결되지 않습니다. 이 문제를 해결하려면 "부정한 방법"으로 템플리트 정의를 가져오는 것을 피하기 위해 프레임워크 오브젝트의 선택적 포함을 사용해야 합니다.

선택적 프레임워크 포함을 지원하기 위해 가장 기본적인 파일만 포함되도록 oxf.h 파일이 최소화되었습니다. 또한 다음 특성이 추가되었습니다.


피드백