青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

sduzgz

無法找到預編譯文件

 

問題:用Visual studio 2008編輯C++程序,按Ctrl+F5,出現(xiàn)下列錯誤:

fatal error C1083: 無法打開預編譯頭文件:“Debug/UGFace.pch”: No such file or  directory 

解決辦法:打開stdafx.cpp源文件,然后編譯一次,待編譯通過后再對程序執(zhí)行Ctrl+F7的操作。

 

剛研究C++語言,那知道,照著書上的例子編寫第一個程序就出錯了:

fatal error C1010: unexpected end of file while looking for precompiled header directive

根據(jù)提示,我改變了預處理命令的應用,甚至我注釋了#include stdafx.h這個頭文件命令,結(jié)果當然是大錯特錯,錯上加錯。編寫第一個程序就搞成這個樣子,實在是有點郁悶……于是我搜索了這一錯誤,看到如下一篇文章:

1、用VC.NET編輯程序,按Ctrl+F7,出現(xiàn)下列錯誤:

fatal error C1083: 無法打開預編譯頭文件:“Debug/UGFace.pch”: No such file or  directory 

解決方法:修改:項目->屬性->C/C++ ->預編譯頭->不使用預編譯頭 即可。

2、先打開一個以前做了一下的工程,編譯通過,能運行。我就稍微修改了一下代碼(只是修 改一個參數(shù)使寫入INI文件的整數(shù)由0變?yōu)?0),這時編譯通不過了,提示頭文件“stdafx.h”編譯錯誤(具體錯誤提示忘記了),錯誤位置指向應用 程序類的源文件的語句“#include "stdafx.h"”。不包含這個文件是不行的,左看右看沒找出個原因來,甚至把代碼改回原來的樣子,還是不行。到網(wǎng)上一查,發(fā)現(xiàn)這么一段話:


學用Visual C++ 6.0的第一個例程就讓我出了錯.用向?qū)傻谝粋€基于對話框的Project之后,我按照書([Visual C++面向?qū)ο笈c可視化程序設計(第二版)]清華大學出版社pp76)上的例子開始了我的第一個程序,當我按照書上的源程序一個字一個字地輸進去之后,始 終有一個錯誤:fatal error C1010: unexpected end of file while looking for precompiled header directive.找了無數(shù)次之后,我決定把向?qū)傻陌^文件的語句:include"StdAfx.h"保留(而這之前我是把它刪掉了的,因為書 上的例子沒有這句.)咦,這下就對了.這是為什么呢?我百思不得其解.

    來到我的VC源代碼目錄,我注意到每個Project每個Project下面的DEBUG文件夾都特別大,而且一個擴展名為 .pch的文件占去了絕大部分,我刪掉之好像對程序編譯運行沒有什么影響.于是抱著對.pch文件的好奇,我在網(wǎng)上搜到了我疑惑之處的解答.這就是 VC++6.0給我們帶來的:預編譯頭文件.預編譯頭文件(一般擴展名為.PCH),是把一個工程中較穩(wěn)定的代碼預先編譯好放在一個文件(.PCH)里. 這些預先編譯好的代碼可以是任何的C/C++代碼--甚至可以是inline函數(shù),只是它們在整個工程中是較為穩(wěn)定的,即在工程開發(fā)過程中不會經(jīng)常被修改 的代碼.

    為什么需要預編譯頭文件?

    一言以蔽之:提高編譯速度.一般地,編譯器以文件為單位編譯,如果修改了一工程中的一個文件則所有文件都要重新編譯,包括頭文件里的所有東西 (eg.Macro宏,Preprocessor預處理),而VC程序中,這些頭文件中所包括的東西往往是非常大的,編譯之將占很長的時間.但它們又不常 被修改,是較穩(wěn)定的,為單獨的一個小文件而重新編譯整個工程的所有文件導致編譯效率下降,因此引入了.PCH文件.

    如何使用預編譯頭文件以提高編譯速度?

    要使用預編譯頭文件,必須指定一個頭文件(.H),它包含我們不會經(jīng)常修改的代碼和其他的頭文件,然后用這個頭文件(.H)來生成一個預編譯頭文件 (.PCH)VC默認的頭文件就是StdAfx.h,因為頭文件是不能編譯的,所以我們還需要一個.CPP文件來作橋梁,VC默認的文件為 StdAfx.cpp,這個文件里只有一句代碼就是:#include "StdAfx.h".接下來要用它生成.PCH文件,涉及到幾個重要的預編譯指令:/Yu,/Yc,/Yx,/Fp.簡單地說,/Yc是用來生 成.PCH文件的編譯開關(guān).在Project->setting->C/C++的Category里的Precompiled Header,然后在左邊的樹形視圖中選擇用來編譯生成.PCH文件的.CPP文件(默認即StdAfx.cpp)你就可以看到/Yc這個開關(guān),它表示這 個文件編譯了以后是否生成.PCH文件(可能/Yc的c表示create)./Fp指令指定生成的.PCH文件的名字及路徑(可能/Fp的p代表 path)./Yu的u即use使用,工程中只要包括了.H文件的文件都會有這個/Yu指令.如果選擇自動Automatic...的話則原來為/Yc的 地方就換成了/Yx指令.如果選擇自動,則每次編譯時編譯器會看以前有沒有生成過.PCH文件,有則不現(xiàn)生成否則就再次編譯產(chǎn)生.PCH文件.

注意:
A,實際上,由Appzard項目向?qū)傻哪J的頭文件及CPP文件StdAfx.h和StdAfx.cpp可以是任何名字的.原 因很簡單.但如果你要這樣做就要記得修改相應的Project->setting...下的幾個預編譯指(/Yc,/Yu,/Yx,/Fp)的參 數(shù).


B.在任何一個包括了將要預編譯的頭文件而使用了.PCH文件的工程文件的開頭,一定必須要是在最開頭,你要包含那個指定生成.PCH文件 的.H文件(通過.CPP文件包括,默認為StdAfx.cpp),如果沒包括將產(chǎn)生我最開頭產(chǎn)生的錯誤.如果不是在最開頭包括將產(chǎn)生讓你意想不到的莫名 其妙錯誤,如若不信,盍為試之?


C.預編譯文件.PCH生成之很耗時間,而且生成之后它也很占磁盤空間,常在5-6M,注意項目完成之后及時清理無用的.PCH文件以節(jié)約磁盤空間.


D.如果丟了或刪了.PCH文件而以后要再修改工程文件時,可將指定的/Yc的.CPP文件(默認為StdAfx.cpp)重新編譯一次即可再次生成.PCH文件,不用傻傻的按F7或Rebuild All

 

    照這么說,我這種情況只要重新將“StdAfx.cpp”編譯一下就可以了,一試,馬上能編譯運行了。心里不知道有多高興,因為以前碰到過幾次這樣的問題都不知道怎么解決,只好重新創(chuàng)建一個相同的工程。
以前還碰到過另外一種情況(早就解決了的):新建一個工程,隨便找一個cpp文件,按ctrl+f7系統(tǒng)將會提示:fatal error C1083: 無法打開預編譯的頭文件:”Debug/xxx.pch”: No such file or directory(其中xxx是工程的名字)這種情況也是一樣的原因,為vc的stdafx.h頭文件未編譯所致。也可以這樣解決:先F7,編譯后再 ctrf+f7。
看來什么東西都要從原理入手,才能更容易地解決。

posted on 2010-09-01 10:12 sduzgz 閱讀(970) 評論(1)  編輯 收藏 引用

Feedback

# re: 無法找到預編譯文件 2010-09-01 13:56 Sunshine Alike

有用,學習了~~  回復  更多評論   



只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


My Links

Blog Stats

常用鏈接

留言簿

隨筆檔案

搜索

最新評論

  • 1.?re: 素數(shù)查找
  • @李現(xiàn)民
    奧,茅塞頓開啊,謝謝啊!
  • --張愛靜
  • 2.?re: 素數(shù)查找
  • 評論內(nèi)容較長,點擊標題查看
  • --李現(xiàn)民
  • 3.?re: 素數(shù)查找
  • 牛人啊,我這習慣確實很多問題啊,命名空間那個我可以明白,你說的prim[i]那個循環(huán)還有最后sqrt(N)拿到外面,改成那樣有什么好處啊,雖然覺得好,但是不知道為什么。@李現(xiàn)民
  • --張愛靜
  • 4.?re: 素數(shù)查找
  • 評論內(nèi)容較長,點擊標題查看
  • --李現(xiàn)民
  • 5.?re: 接口,虛函數(shù)及純虛函數(shù)
  • 分得太細反而著了相, 不要太看重語法上的區(qū)別,這些東西都是基于應用而衍生的,多研究一些設計的東西, 比仔細區(qū)分這些語法概念要合算
  • --李現(xiàn)民

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产日韩欧美黄色| 国产精品视频男人的天堂| 另类专区欧美制服同性| 国产精品免费区二区三区观看| 亚洲看片免费| 久久蜜桃精品| 亚洲视频第一页| 欧美一区影院| 伊人久久亚洲影院| 亚洲激情另类| 亚洲免费电影在线观看| 欧美日韩一区二区三区在线 | 亚洲欧美日韩在线高清直播| 欧美成人亚洲成人日韩成人| 欧美黄污视频| 久久成人精品| 免费精品视频| 性伦欧美刺激片在线观看| 欧美在线播放| 一区二区三区视频免费在线观看| 妖精成人www高清在线观看| 国产精品永久入口久久久| 欧美大色视频| 久久精品一区二区三区四区 | 蜜臀久久久99精品久久久久久| 亚洲国产日韩美| 午夜性色一区二区三区免费视频| 亚洲国产午夜| 久久久精品一区二区三区| 9l国产精品久久久久麻豆| 国产精品sm| 亚洲在线观看| 欧美一区二区性| 久久爱另类一区二区小说| 欧美大学生性色视频| 久久久久久欧美| 国产一区二区三区直播精品电影| 亚洲欧洲在线播放| 亚洲成人在线视频播放| 久久久久国产精品麻豆ai换脸| 欧美日韩一区国产| 99www免费人成精品| avtt综合网| 欧美香蕉大胸在线视频观看| 亚洲人被黑人高潮完整版| 亚洲乱码精品一二三四区日韩在线| 久久久久国产精品麻豆ai换脸| 久久一本综合频道| 国内成人在线| 欧美 日韩 国产一区二区在线视频| 开心色5月久久精品| 91久久精品国产| 欧美日韩在线视频观看| 亚洲综合第一页| 久久综合九九| 久久久99国产精品免费| 欧美成人一区二区| 亚洲人成免费| 欧美日韩一区二区精品| 午夜精品福利视频| 另类成人小视频在线| 99综合精品| 亚洲精品久久久久久下一站| 久久免费国产精品1| 午夜精品在线视频| 亚洲开发第一视频在线播放| 欧美日韩免费看| 另类av一区二区| 亚洲主播在线观看| 欧美激情在线狂野欧美精品| 亚洲欧美一区二区在线观看| 亚洲福利av| 国产精品国产福利国产秒拍| 亚洲午夜精品| 艳女tv在线观看国产一区| 欧美激情一区二区三区| 噜噜噜噜噜久久久久久91| 亚洲一级黄色av| 亚洲免费视频网站| 亚洲午夜电影在线观看| 在线视频精品一区| 中文一区二区在线观看| 99在线|亚洲一区二区| 亚洲大片av| 亚洲精品国精品久久99热一| 亚洲国产欧美不卡在线观看| 在线看一区二区| 日韩视频三区| 久久国产日本精品| 久久青草久久| 亚洲高清视频一区二区| 亚洲夫妻自拍| 一区二区激情视频| 午夜亚洲性色福利视频| 久久亚洲春色中文字幕久久久| 久久躁日日躁aaaaxxxx| 国产精品每日更新在线播放网址| 久久久精品动漫| 亚洲茄子视频| 一区二区三区精品国产| 午夜精品久久久久久久99樱桃| 午夜亚洲一区| 欧美激情2020午夜免费观看| 国产精品99久久久久久www| 欧美一区二区成人6969| 欧美粗暴jizz性欧美20| 国产精品一区三区| 欧美黄色免费网站| 一区二区三区你懂的| 久久国产精品久久久久久电车| 欧美成人亚洲| 久久亚洲欧美| 一区二区在线观看视频| 香蕉国产精品偷在线观看不卡| 女生裸体视频一区二区三区| 亚洲免费视频成人| 国产精品久久久久久久7电影| 99综合在线| 一本色道久久综合| 欧美精品三级| 99国产精品久久久久久久久久 | 久久久久国产精品午夜一区| 亚洲精品日韩综合观看成人91| 久久久精品国产一区二区三区| 亚洲美洲欧洲综合国产一区| 在线中文字幕不卡| 一区二区三区欧美日韩| 国产精品国产亚洲精品看不卡15| 日韩视频精品在线观看| 亚洲国产高潮在线观看| 能在线观看的日韩av| 亚洲人成亚洲人成在线观看图片| 久久久亚洲国产美女国产盗摄| 欧美黄色免费网站| 欧美国产一区二区| 亚洲区国产区| 国产精品99久久不卡二区| 亚洲美女黄色| 狠狠综合久久| 一本久道久久综合中文字幕| 欧美色精品天天在线观看视频| 亚洲欧美国产视频| 久久综合伊人77777尤物| 亚洲欧美一区二区三区在线| 91久久精品日日躁夜夜躁欧美| 老**午夜毛片一区二区三区| 99re6热在线精品视频播放速度| 欧美一区二区黄| 亚洲一区三区电影在线观看| 欧美va天堂在线| 久久亚洲综合色一区二区三区| 免费观看在线综合色| 久久亚洲精品视频| 国产日韩一区欧美| 99re热这里只有精品视频| 最新国产拍偷乱拍精品 | 牛牛国产精品| 麻豆久久婷婷| 亚洲国产一区在线| 久久久国产亚洲精品| 欧美电影免费观看| 亚洲高清三级视频| 久久噜噜亚洲综合| 卡一卡二国产精品| 亚洲成人在线免费| 久久综合给合| 亚洲国产欧美在线人成| 影音先锋在线一区| 久久福利精品| 欧美激情bt| 日韩一级视频免费观看在线| 欧美日韩成人免费| 亚洲一级一区| 女女同性精品视频| 亚洲视频在线观看网站| 国产丝袜一区二区三区| 免费亚洲一区二区| 亚洲精品在线二区| 亚洲欧美国产日韩天堂区| 国产人久久人人人人爽| 久久日韩精品| 亚洲婷婷免费| 亚洲国产综合视频在线观看| 欧美人在线观看| 亚洲精品欧美日韩| 老司机久久99久久精品播放免费 | 国产精品国产福利国产秒拍| 久久久国产成人精品| 99热在这里有精品免费| 乱码第一页成人| 久久精品亚洲一区| 亚洲乱码国产乱码精品精 | 亚洲精品国产精品乱码不99 | 欧美电影免费观看高清完整版| 亚洲午夜视频在线| 亚洲日本欧美日韩高观看| 美女亚洲精品| 美女在线一区二区| 亚洲成人自拍视频| 亚洲综合国产|