我用VS2013函式右鍵“轉到定義”時跳轉到函式宣告,無法跳轉到函式實作部分。
uj5u.com熱心網友回復:
安裝一個VAX吧uj5u.com熱心網友回復:
clean掉重新編譯所有試下?,要不就把工程相關的一些快取檔案刪掉,按理說vc6才這樣uj5u.com熱心網友回復:
重建專案重啟VS
修復或重裝VS
重啟電腦
……
uj5u.com熱心網友回復:
洗掉sdf檔案,重新編譯,試試uj5u.com熱心網友回復:
*.dsp(DeveloperStudio Project):是VC++的工程組態檔,比如說你的工程包含哪個檔案,你的編譯選項是什么等等,編譯的時候是按照.dsp的配置來的。*.dsw(DeveloperStudio Workspace):是作業區檔案,用來配置工程檔案的。它可以指向一個或多個.dsp檔案。
*.clw:是 ClassWizard資訊檔案,實際上是INI檔案的格式,有興趣可以研究一下.有時候ClassWizard出問題,手工修改CLW檔案可以解決.如果此檔案不存在的話,每次用ClassWizard的時候繪提示你是否重建。
*.opt:工程關于開發環境的引數檔案,如工具條位置等資訊。
*.aps:(AppStudio File),資源輔助檔案,二進制格式,一般不用去管他。
*.rc:資源檔案。在應用程式中經常要使用一些位圖、選單之類的資源, VC中以rc為擴展名的檔案稱為資源檔案, 其中包含了應用程式中用到的所有的windows資源, 要指出的一點是rc檔案可以直接在VC集成環境中以可視化的方法進行編輯和修改。
*.plg:是編譯資訊檔案,編譯時的error和warning資訊檔案(實際上是一個html檔案,一般用處不大),在Tools->Options里面有個選項可以控制這個檔案的生成。
*.hpj:(Help Project)是生成幫助檔案的工程,用microsfot Help Compiler可以處理。
*.mdp:(Microsoft DevStudio Project)是舊版本的專案檔案,如果要打開此檔案的話,會提示你是否轉換成新的DSP格式。
*.bsc:是用于瀏覽專案資訊的,如果用Source Brower的話就必須有這個檔案。如果不用這個功能的話,可以在Project Options里面去掉Generate Browse Info File,可以加快編譯速度。
*.map:是執行檔案的映像資訊紀錄檔案,除非對系統底層非常熟悉,這個檔案一般用不著。
*.pch:(Pre-Compiled File)是預編譯檔案,可以加快編譯速度,但是檔案非常大。
*.pdb:(Program Database)記錄了程式有關的一些資料和除錯資訊,在除錯的時候可能有用。
*.exp:只有在編譯DLL的時候才會生成,記錄了DLL檔案中的一些資訊。一般也沒什么用。
*.ncb:無編譯瀏覽檔案(no compile browser)。當自動完成功能出問題時可以洗掉此檔案,build后會自動生成。
*.suo(solution user options)解決方案用戶選項,記錄所有將與解決方案建立關聯的選項,以便在每次打開時,它都包含用戶所做的自定義設定。比如VS布局以及專案最后編譯的而又沒有關掉的檔案用于下次打開時用。其中,VS布局包括:監視器1234的變數串列、斷點標記及開關狀態、輸出視窗錯誤視窗等的分布及其懸浮狀態,還有專案卸載狀態標記。.suo檔案偶爾會被破壞,從而在構建和編輯應用程式時出現意想不到的結果。如果Visual Studio對于每個解決方案不穩定,就應洗掉.suo檔案。下次打開解決方案時,Visual Studio會重建它。
*.c:源代碼檔案,按C語言用法編譯處理。
*.cpp:源代碼檔案,按C++語法編譯處理。
*.h是頭檔案,一般用作宣告和全域定義。
*.sln:在開發環境中使用的解決方案檔案。它將一個或多個專案的所有元素組織到單個的解決方案中。此檔案存盤在父專案目錄中.解決方案檔案,他是一個或多個.proj(專案檔案)的集合。
*.vcproj 是vc的工程專案檔案
.vcproj .sln 分別是VC2002以上工程檔案和解決方案檔案
.dsp .dsw 分別是VC6的工程檔案和工程組檔案
將VC7工程轉換回VC6工程,換言之,就是將.sln/.vcproj這兩個檔案轉換到.dsw/.dsp檔案。
vc6打開dsp或dsw,vc2003,2005打開sln或vcproj
VC6打開*.dsw檔案,單擊工具列上的"!",然后你的檔案夾里多了一個DEBUG檔案夾里面有.EXE檔案
在vc7里面打開vc6的工程時,它會提示你是否轉換成vc7的格式,轉換后就可以直接使用了。
轉換后的工程,vc6就不認識了。 我使用vc.net 2003打開vc6的工程,提示要升級,我也選了yes to all ,
但是其實vc.net只是讀取vc6的.dsw和.dsp中的資訊并添加了.sln和.vcproj。
用vc.net打開過的vc6工程 dsw和dsp都沒有改變。所以用vc.net打開過的vc6工程,雖然已經被“升級”其實 dsw和dsp并沒有被改動,再打開時就不用dsw而用sln了。
這點做得很好,只是從vc6的工程檔案中讀資訊,并不改,照樣可以用vc6打開原來的dsw和dsp
uj5u.com熱心網友回復:
重裝uj5u.com熱心網友回復:
卸載,清理干凈垃圾檔案,重新安裝。uj5u.com熱心網友回復:
這個問題也困擾了我。但我后來可以跳轉了,有次換了個專案卻又發現不行了。一時還是覺得是不是編譯環境搞混亂了。但當我查找所有參考的時候,發現了一個現象,就是函式定義和申明的地方有點不一樣。int fun (int, int); //函式申明及呼叫在一個檔案f1.c
int fun (para1, para2) //函式定義在另一個檔案f2.c
int para1, para2;
{
}
這是舊式的C函式定義形式K&R,改成新式的ANSI,如int fun(int para1, int para2) {}就可以在f1.c中呼叫fun的地方跳轉到f2.c定義處了。如果fun的呼叫及定義在同一個檔案里,好像舊式的定義形式也是可以呼叫的。在不同專案(放在一個解決方案里),比如專案1是普通的exe專案,專案2是lib專案,專案1中呼叫專案2中的函式,也是可以跳轉的,但我這次也是遇到不能跳轉,還沒去看是什么原因,但應該是不同檔案中的跳轉問題是一樣的。建議把函式定義形式改為新式ANSI試試。
uj5u.com熱心網友回復:
點擊專案->重新掃描解決方案uj5u.com熱心網友回復:
您好 請問您解決這個問題了嗎uj5u.com熱心網友回復:
沒那么復雜吧?是你檔案沒有加載到專案中吧uj5u.com熱心網友回復:
除了洗掉可重建檔案外,如果電腦速度慢,剛打開工程后,工程資訊還未完全匯入記憶體,也會這樣。另外這個實作在什么地方?是系統的cpp還是你自己的,看看是不是路徑發生變化了
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/16893.html
標籤:基礎類
上一篇:MFC DLL型別,匯出Lib,其它應用程式匯入運行時,還是提示需要dll
下一篇:VLC視頻尺寸獲取不對???1280*720的視頻用libvlc_video_get_size獲取到視頻尺寸是 1280*738
