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

sduzgz

無(wú)法找到預(yù)編譯文件

 

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

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

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

 

剛研究C++語(yǔ)言,那知道,照著書上的例子編寫第一個(gè)程序就出錯(cuò)了:

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

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

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

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

解決方法:修改:項(xiàng)目->屬性->C/C++ ->預(yù)編譯頭->不使用預(yù)編譯頭 即可。

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


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

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

    為什么需要預(yù)編譯頭文件?

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

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

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

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


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


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


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

 

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

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

Feedback

# re: 無(wú)法找到預(yù)編譯文件 2010-09-01 13:56 Sunshine Alike

有用,學(xué)習(xí)了~~  回復(fù)  更多評(píng)論   



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


My Links

Blog Stats

常用鏈接

留言簿

隨筆檔案

搜索

最新評(píng)論

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

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美大片免费久久精品三p | 亚洲特级片在线| 久久综合色88| 女女同性精品视频| 蜜桃久久av一区| 亚洲区一区二区三区| 日韩视频在线你懂得| 亚洲性色视频| 噜噜噜久久亚洲精品国产品小说| 欧美ab在线视频| 欧美涩涩视频| 加勒比av一区二区| a4yy欧美一区二区三区| 篠田优中文在线播放第一区| 久久久蜜臀国产一区二区| 亚洲国产精品尤物yw在线观看| 亚洲精品你懂的| 亚洲视频一区二区在线观看 | 欧美激情精品久久久| 亚洲人成在线播放网站岛国| 亚洲一级片在线观看| 久久亚洲影院| 国产精品日韩专区| 亚洲国产精品电影| 欧美亚洲免费高清在线观看| 欧美成人在线网站| 亚洲欧美日韩综合aⅴ视频| 男男成人高潮片免费网站| 国产精品欧美日韩一区二区| 亚洲国产精品成人综合| 欧美在线一区二区| 日韩一级成人av| 女同性一区二区三区人了人一| 国产精品毛片大码女人| 亚洲乱码久久| 免费看av成人| 久久国产精品久久久久久| 欧美系列亚洲系列| 亚洲欧洲综合另类| 免费成人性网站| 欧美在线播放高清精品| 国产精品进线69影院| 亚洲精品乱码久久久久| 久久一区二区三区国产精品 | 久久国产手机看片| 一区二区三区 在线观看视| 久久综合影音| 伊人狠狠色j香婷婷综合| 欧美一区二区三区免费视频| 日韩视频一区二区三区| 欧美国产免费| 亚洲人成欧美中文字幕| 一区二区三区无毛| 国产伦精品一区二区| 亚洲黄页一区| 亚洲丁香婷深爱综合| 久久久亚洲精品一区二区三区| 国产精品乱子久久久久| 亚洲一二三区视频在线观看| 亚洲精品久久久久中文字幕欢迎你 | 欧美日韩小视频| 99爱精品视频| 亚洲精品综合在线| 欧美精选午夜久久久乱码6080| 91久久久久久| 亚洲精品午夜| 欧美午夜不卡影院在线观看完整版免费| 亚洲精品在线视频观看| 亚洲精品国产无天堂网2021| 欧美高清日韩| 一区二区欧美激情| 99视频精品| 国产精品久久久久秋霞鲁丝 | 亚洲国产欧美国产综合一区 | 久久精品国产亚洲aⅴ| 激情一区二区三区| 亚洲高清精品中出| 欧美日韩一区二区精品| 销魂美女一区二区三区视频在线| 欧美一区二区三区日韩| 尤物99国产成人精品视频| 亚洲国产二区| 国产精品伊人日日| 欧美成年人网站| 欧美色欧美亚洲另类二区| 欧美在线观看一二区| 裸体一区二区三区| 亚洲欧美日韩国产一区二区| 欧美在线一二三四区| 日韩亚洲欧美在线观看| 午夜精品一区二区三区在线播放| 亚洲大片一区二区三区| 中文久久精品| 最新高清无码专区| 欧美一区2区视频在线观看| 亚洲人体1000| 欧美一区二区三区四区视频| 亚洲理论电影网| 欧美亚洲综合另类| 在线视频一区观看| 久热这里只精品99re8久| 亚洲综合丁香| 久久躁日日躁aaaaxxxx| 午夜欧美理论片| 欧美剧在线观看| 免费亚洲电影在线| 国产噜噜噜噜噜久久久久久久久| 亚洲经典在线看| 久久精品人人做人人爽电影蜜月| 欧美激情a∨在线视频播放| 久久精品国产亚洲一区二区三区| 欧美激情偷拍| 欧美高清不卡在线| 国产字幕视频一区二区| 国产精品99久久久久久人| 亚洲国产精品久久久久久女王| 亚洲一区黄色| 亚洲一区欧美激情| 欧美精品久久久久久久久久| 久久综合色天天久久综合图片| 国产精品劲爆视频| 99视频有精品| 一本色道久久综合精品竹菊| 久久性色av| 老司机67194精品线观看| 国产伦精品一区二区三区视频黑人 | 欧美一区二区私人影院日本| 亚洲午夜未删减在线观看| 美女性感视频久久久| 美女网站在线免费欧美精品| 国产一区二区三区在线播放免费观看| 一区二区三区不卡视频在线观看 | 中文亚洲视频在线| 欧美成人久久| 亚洲国产高清一区| 亚洲精品三级| 欧美理论电影在线观看| 亚洲国产成人不卡| 亚洲免费电影在线| 欧美日韩国产精品一区| 99亚洲一区二区| 午夜精品久久久久久久久| 国产精品视频不卡| 欧美一区2区视频在线观看| 久久先锋影音av| 亚洲福利在线视频| 欧美激情综合五月色丁香| 亚洲精品美女| 欧美在线观看一区| 伊人成年综合电影网| 蜜臀久久99精品久久久画质超高清| 欧美不卡在线视频| 一本色道久久综合亚洲精品高清| 欧美人与性动交cc0o| 中文亚洲免费| 浪潮色综合久久天堂| 亚洲人成网站精品片在线观看| 欧美激情精品久久久久久久变态| 日韩亚洲在线观看| 欧美一区二区免费视频| 国内外成人免费激情在线视频网站 | 日韩视频免费在线观看| 亚洲国产精品一区在线观看不卡| 日韩视频免费| 欧美一区二区三区喷汁尤物| 红桃视频一区| 欧美国产精品| 午夜视频久久久| 欧美激情性爽国产精品17p| 亚洲午夜精品17c| 国产一区二区三区在线观看免费| 欧美暴力喷水在线| 亚洲一区视频在线| 欧美高清影院| 久久精品人人做人人综合| 日韩亚洲欧美成人| 极品尤物一区二区三区| 欧美无砖砖区免费| 久久夜色精品国产亚洲aⅴ| 99国产精品国产精品久久| 榴莲视频成人在线观看| 亚洲资源在线观看| 亚洲精品老司机| 国语自产精品视频在线看抢先版结局| 欧美久久婷婷综合色| 久久亚洲二区| 欧美一区二区三区另类 | 久久亚洲国产精品日日av夜夜| 999在线观看精品免费不卡网站| 国产精品三区www17con| 欧美激情亚洲综合一区| 久久久www成人免费精品| 亚洲天堂成人在线观看| 亚洲国产精品一区二区第一页 | 在线午夜精品| 亚洲欧洲日夜超级视频| 牛牛影视久久网| 久久中文字幕一区| 久久久国产91| 欧美一区二区三区免费观看视频 |