當前位置:首頁 » 編程軟體 » vc預編譯

vc預編譯

發布時間: 2023-08-06 01:36:22

『壹』 VC++6.0中出現這樣的錯誤提示「意外的文件結尾而尋找預編譯頭指令」

設置一下即可,
打開VC->選中Project->Setting->C/C++,在下拉列表中選中預編譯->不使用預編譯頭。

『貳』 VC中".pch"是什麼文件,沒有.pch文件怎麼辦(ZZ)

.pch文件是 用來預編譯頭文件用的,如果生成.pch文件,上次編譯的部分頭文件,下次就不用重新再編譯了。
所謂的預編譯頭就是把一個工程中的那一部分代碼,預先編譯好放在一個文件里(通常是以.pch為擴展名的),這個文件就稱為預編譯頭文件這些預先編譯好的代碼可以是任何的 C/C++代碼--------甚至是inline的函數,但是必須是穩定的,在工程開發的過程中不會被經常改變。如果這些代碼被修改,則需要重新編譯生成預編譯頭文件。注意生成預編譯頭文件是很耗時間的。同時得注意預編譯頭文件通常很大,通常有6-7M大。注意及時清理那些沒有用的預編譯頭文件。
編譯器是以文件為單位編譯的,一個文件經過修改後,會重新編譯整個文件,當然在這個文件里包含的所有頭文件中的東西(.eg Macro, Preprocesser )都要重新處理一遍。VC的預編譯頭文件保存的正是這部分信息。以避免每次都要重新處理這些頭文件。
預編譯頭的作用:
根據上文介紹,預編譯頭文件的作用當然就是提高便宜速度了,沒有必要每次 都編譯那些不需要經常改變的代碼。編譯性能當然就提高了。
預編譯頭的使用:
要使用預編譯頭,我們必須指定一個頭文件,這個頭文件包含我們不會經常改變的代碼和其他的頭文件,然後用這個頭文件來生成一個預編譯頭文件(.pch文件)StdAfx.h這個文件。這是VC提供的一個「系統級別」的,編譯器帶的一個頭文件。其實不是的,這個文件可以是任何名字的。 典型的由AppWizard生成的MFC Dialog Based程序的預編譯頭文件。(因為AppWizard 會指定好如何使用預編譯頭文件,默認的是StdAfx.h,這是VC起的名字)。發現這個頭文件里包含了以下的頭文件:
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4
Common Controls
#include <afxcmn.h>
這些正是使用MFC的必須包含的頭文件
一個頭文件是不能編譯的。所以還需要一個cpp文件來生成.pch 文件。這個文件默認的就是StdAfx.cpp。在這個文件里只有一句代碼就是:#include 「Stdafx.h」。原因是理所當然的,僅僅是要它能夠編譯而已?D?D?D也就是說,要的只是它的.cpp的擴展名。可以用/Yc編譯開關來指
定StdAfx.cpp來生成一個.pch文件,通過/Fp編譯開關來指定生成的pch文件的名字。打 開project ->Setting->C/C++ 對話框。把Category指向Precompiled Header。在左邊的樹形視圖里選擇整個工程Project Options(右下角的那個白的地方)可以看到 /Fp 「debug/PCH.pch」,這就是指 定生成的.pch文件的名字,默認的通常是<工程名>.pch(示例工程名就是PCH)。 然後,在左邊的樹形視圖里選擇StdAfx.cpp.//這時只能選一個cpp文件! 這時原來的Project Option變成了 Source File Option(原來是工程,現在是一個文件,當然變了)。在這里可以看到 /Yc開關,/Yc的作用就是指定這個文件來創建一個 Pch文件。/Yc後面的文件名是那個包含了穩定代碼的頭文件,一個工程里只能有一個文件的可以有YC開關。VC就根據這個選項把 StdAfx.cpp編譯成一個Obj文件和一個PCH文件。
然後再選擇一個其它的文件來看看,//其他cpp文件
在這里,Precomplier 選擇了 Use ???一項,頭文件是指定創建PCH 文件的stda fx.h 文件。事實上,這里是使用工程里的設置,(如圖1)/Yu」stdafx.h」。這樣,就設置好了預編譯頭文件。就可以使用預編譯頭功能了。

『叄』 VC6.0不能打開預編譯頭文件

出錯的原因是包含了預編譯頭文件stdafx.h。但其實這種簡單的命令行程序並不需要。
在創建工程的時候,在向導的第一個對話框里,勾選「空項目」復選框。這樣就不會出現這個錯誤了。

『肆』 VC++里的 預編譯頭 是什麼意思,幹嘛用的

一、什麼是預編譯頭?
預編譯頭物理上與通常的的.obj文件是一樣的,但編譯入預編譯頭的.h,.c,.cpp文件在整個編譯過程中,只編譯一次,如預編譯頭所涉及的部分不發生改變的話,在隨後的編譯過程中此部分不重新進行編譯。進而大大提高編譯速度,並便於對頭文件進行管理,也有助於杜絕重復包含問題。
二、什麼時候使用預編譯頭?
當大多.c或.cpp文件都需要相同的頭文件時。
當某些代碼被大量重復使用時。
當導入某些不同庫都有實現的函數,並產生混亂時。

熱點內容
康拓2演算法 發布:2025-03-20 19:11:49 瀏覽:596
跨平台編譯語言有哪些 發布:2025-03-20 19:08:25 瀏覽:780
音樂appftp安卓 發布:2025-03-20 19:03:24 瀏覽:305
家長申述驗證的密碼是什麼 發布:2025-03-20 18:55:27 瀏覽:9
編譯原理與技術第二版下載 發布:2025-03-20 18:55:26 瀏覽:938
怎麼寫編程語言 發布:2025-03-20 18:42:52 瀏覽:688
我去密碼是多少 發布:2025-03-20 18:12:28 瀏覽:542
方舟編譯器啥時候開始 發布:2025-03-20 18:11:40 瀏覽:959
常用java類 發布:2025-03-20 18:07:06 瀏覽:202
怎麼查看安卓大屏使用的什麼協議 發布:2025-03-20 18:03:07 瀏覽:705