프리 컴파일 된 헤더를 사용할 때 모든 파일에 #include "stdafx.h"
이 필요합니까? 아니면 소스 파일 만 포함시켜야합니까?MSVC 프리 컴파일 헤더 : "stdafx.h"를 #include 할 필요가있는 파일은 무엇입니까?
편집 : 또한 내 미리 컴파일 된 헤더 파일 #includes
많은 STL 헤더. 그러나 내 머리글에서 가끔 std::vector
또는 그와 비슷한 함수를 반환하므로 어쨌든 #include <vector>
이 필요합니다. stdafx.h를 포함하는 것보다 더 나쁜가? 유닛 테스트 프레임 워크의 정의를 포함해야합니다.
그러나 다른 프로젝트의 소스 파일에이 헤더 파일이 포함되면 어떻게 될까요? 이 경우 첫 번째 프로젝트의 stdafx.h는 포함되지 않습니다. –
프로젝트 당 하나의 미리 컴파일 된 헤더와 각 _source 파일 만 허용됩니다 (다른 헤더 파일에서 포함하지 마십시오!) 먼저 포함시켜야합니다. 서로 다른 미리 컴파일 된 헤더 파일이있는 두 개의 프로젝트로 작업하고 싶다면 별도의 프로젝트 인 한 문제 없습니다. 그들은 각각 자신의 헤더 파일을 얻습니다. 충돌은 없습니다. – bdonlan
당신은 나를 이해하지 못합니다. 프로젝트 1 : 에 stdafx.h : 사용법 #include ... One.h : 벡터 일부(); One.cpp : 사용법 #include "stdafx.h를" 사용법 #include "One.h" .... 프로젝트 2 : Two.cpp : #INCLUDE 을 "One.h" Two.cpp 벡터 클래스는 정의되지 않았으므로 여기에 오류가 있습니다. –