2013-10-07 5 views
13

내 헤더 파일의 몇에는 포함이 없다, 그래서 나는 비주얼 스튜디오 2010 년에이 메시지가 나타납니다IntelliSense PCH 경고를 중지하려면 어떻게합니까?

IntelliSense: PCH warning: cannot find a suitable header stop location. An intellisense PCH file was not generated. 

내가 예를 들어, 하나의 헤더를 추가하는 경우 :

#include <iostream> 

그것은 사라집니다.

답변

9

.cpp 파일을 추가 할 때 프로젝트의 PCH 설정을 상속받습니다. 문제의 더 자세한 설명 here

솔루션 :

  1. 파일의 시작 부분에 #pragma once를 추가합니다.

그것은 당신의 소스 파일을 발생할 수는 #include

설정
    1. 을 따라서 컴파일러가 만족하실 것입니다, 한 번만 단일 컴파일에 포함 할 추가 요구하지 않을 것이다 당신의 프로젝트에서 미리 컴파일 된 헤더를 사용하지 마십시오.
    2. 추가 한 해당 cpp 파일의 PCH 사용을 중지하면 IntelliSense와 컴파일러 경고/오류가 모두 지워집니다.

    참고! 일부는 도움이 되었기 때문에 num 2와 3을 포함하고 있지만, 제 경우를 해결 한 것은 num 1입니다.

  • +0

    ...이 오류가 발생한 프로젝트가 무엇인지 기억이 안납니다. 이 오류가 나타날 때까지 VS2010의 모든 파일을 열어 볼 수 있으며'#pragma once'를 시도 할 수 있습니다. – NobleUplift

    +0

    반년 밖에 안 걸렸지 만 마침내 대답을 받아 들였습니다! : D – NobleUplift

    +1

    #pragma 지시어를 설명해 주시겠습니까? 왜 문제가 해결 되었습니까? –

    4

    나는 문제가 있습니다 (기본 "에 stdafx.h"에 의해) 프로젝트에 헤더를 미리 컴파일하고 올바르게 헤더/소스 파일의 시작 부분에

    #include "stdafx.h" 
    

    를 추가해야 문제를 해결하는 것입니다 가정 .

    코멘트 내가 틀렸다면, 첫 번째 대답이고 영어가 제 모국어가 아니기 때문입니다.

    +0

    글쎄, 나는 그가 지금 3 년 이상 자신의 문제를 해결해야한다고 생각합니다. ;) – Eiko

    +0

    이 문제가 발생하는 이유를 알기 위해이 문제가 발생한 다른 사용자의 경우이 asnwer를 작성했습니다. F. 나는 동일한 문제가 있었는데, 나는이 문제를 해결하는 anser를 보았다. 그러나 나는 그것이 왜 하는지를 몰랐다. 그래서 나는 문제를 더럽 히고 그것을 해결하는 방법을 설명하는 또 다른 답을 생각하고 썼다. – Serid

    관련 문제