2012-03-21 4 views
3

정적 라이브러리를 만들 때 모든 헤더 파일을 하나의 래퍼 헤더 파일로 결합하는 것이 좋은가요? 예를 들어, * .lib 파일로 컴파일 된 .h 및 * .cpp 파일이 여러 개 있다고 가정 해 보겠습니다. 래퍼 헤더 파일을 만드는 것은 좋은 습관입니다. 따라서 include를 작성할 때 하나의 헤더 만 포함하면됩니다. 다른 헤더는 필요하거나 그렇지 않을 수도 있습니다. 이 파일은 사용하지 않는 파일과 함께 라이브러리 파일에 링크 된 * .exe 파일을 부풀게합니까?라이브러리의 헤더 파일 결합하기

답변

4

정적 라이브러리 인 경우 하나의 헤더 또는 여러 헤더를 만들지 여부에 관계없이 어쨌든 exe ​​파일에 포함됩니다. 그러나 디자인 측면에서 볼 때 헤더를 별도로 두는 것이 좋습니다. 그래야 해당 lib의 사용자에게 특별히 필요한 헤더 만 포함됩니다.

+0

정확하게 말하면 링커는 정적 라이브러리에서 필요한 개별 객체 파일 만 가져옵니다. 가능한 결과는 0 오브젝트 파일, 즉 링커 명령 행에서 불필요한 정적 라이브러리 인 –

+0

을 가져 오는 것입니다. 그러나 조직의 용어는 분리 된 상태로 유지하는 것이 더 좋습니까? – mma1480

+0

@ mma1480 : 예, 불필요한 연결을 피할 수 있습니다. – Aamir

관련 문제