4

VS-IDE는 리소스 헤더 파일에 //{{NO_DEPENDENCIES}}을 쓸 것입니다. 이 메모는 실제로 리소스 헤더가 포함 된 cpp 파일을 다시 작성하지 못하게하는 기능입니다.미리 컴파일 된 헤더에 resource.h를 포함시키는 것이 좋습니다.

그러나 stated in the MSDN처럼 "바람직하지 않은 부작용"이 발생할 수 있습니다.

우리 프로젝트에서는 사전 컴파일을 위해 이 stdafx.h에 포함되어 있습니다. 리소스 파일이 변경되면 미리 컴파일 된 헤더가 다시 작성되지 않습니다.

NO_DEPENDENCIES을 제거하면 작동하지만 (IDE를 통해 리소스가 변경된 경우 다시 작성됩니다)

//{{NO_DEPENDENCIES}}을 파일이 바뀔 때마다 resource.h 파일에 쓰는 것을 방지하는 방법이 있습니까?

가장 좋은 방법은 미리 컴파일 된 헤더 파일에서 resource.h을 제외하고 필요한 .h 및 .cpp 파일에 다시 포함시키는 것입니다. 이렇게하면 영향을받는 파일 만 (모든 파일이 아닌) 수동으로 다시 빌드해야합니다 (pch가 다시 컴파일되면 발생합니다).

의견이 있으십니까?

답변

1

고객님의 제안에 동의합니다. resource.h 파일은 미리 컴파일 된 헤더 파일의 일부가 아니어야합니다. 한쪽에 현재 하나, 다른 쪽resource.h일 현재이 제안을 적용하는 것은 너무 큰 컴파일 시간을 리드하는 경우, 당신은이 개 미리 컴파일 된 헤더 파일을 사용하려고 할 수

참고. 이 후자의 PCH는 resource.h이 필요한 파일에서만 사용됩니다.

유지 관리가 너무 쉽지는 않지만 ...

관련 문제