2013-10-07 19 views
13

benim başlık dosyaları Birkaç hayır içerir var, bu yüzden Visual Studio 2010 bu mesajı alırsınız:IntelliSense PCH Uyarısını nasıl durdururum?

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

Ben mesela tek başlık eklerseniz:

#include <iostream> 

O kaybolur. Bu hatayı (potansiyel olarak kullanılmayan) eklemeden göstermekten nasıl durdurabilirim?>

cevap

9

Bir .cpp dosyası eklerken, projenin PCH ayarlarını devralır. Sorunun Daha ayrıntılı bir açıklama here

Çözümleri:

  1. dosyanın başlangıcında #pragma once ekleyin.

Bu sizin kaynak dosyasını neden olacaktır #include

Ayar
    1. nedenle derleyici memnun olacak, sadece bir kez tek bir derleme dahil edilecek ve ek gerektirir kalmayacaktır.NEWLINENEWLINEKonum Önceden derlenmiş üstbilgileri kullanmayan proje
    2. Eklediğiniz bir cpp dosyası için PCH kullanımını devre dışı bırakın; bu, hem IntelliSense hem de derleyici uyarı/hatasını temizler.

    Not! Num 2 ve 3'ü dahil ediyorum çünkü bazıları yardım ettiğini söylüyor, ama sadece davamı çözen 1 numaraydı.

  • +0

    Bu hatadan nasıl bir proje aldığımı bile hatırlamıyorum. Bu hatayı alıp, #pragma'yı bir kez daha deneyene kadar VS2010'da her birini açacağım. – NobleUplift

    +0

    Sadece yarım yıl sürdü ama sonunda cevabını kabul ettim! : D – NobleUplift

    +1

    #pragma yönergesini açıklayabilir misiniz? Neden sorunu çözüyor? –

    4

    Ben sorun (varsayılan "stdafx.h" tarafından) projenizde başlığını precompiled ve kodu doğru size başlık/kaynak dosyasının başında

    #include "stdafx.h" 
    

    eklemek gerekir sorunu çözmek için olduğunu varsayalım .

    Yanlış olup olmadığımı sorun, çünkü ilk cevabım ve ingilizcem ana dilim değil.

    +0

    Sanırım sorununu 3 yıldan daha uzun bir süre önce çözmesi gerekiyordu. ;) – Eiko

    +0

    Bu sorunun neden oluştuğunu bilmek için, bu sorunla karşılaşan diğer kullanıcılar için bunu asnwer yazdım. F.E. Aynı problemi yaşadım, bu soruyu ziyaret ettim, problemi çözen bir anser gördüm, ama neden olduğunu bilmedim, bu yüzden başka bir cevap yazdım ve problemi de sordum ve nasıl çözdüğünü açıklıyor. – Serid

    İlgili konular