VS2002以後,雖然每一個版本都有變化。可是思想上已經很是成熟了。編輯器
vc5,6的工程文件是.dspsvn
vc2002-2008工程文件是vcproj函數
vc2010以後是vcxproj工具
vcproj和vcxproj都是xml格式的。佈局
下面結合例子講一下:solution爲建立的解決方案,demo爲建立的項目debug
解決方案solution總目錄以下:
調試
ipch目錄內的文件和.sdf文件是visual studio用來保存預編譯的頭文件和Intellisense用的,刪除這些文件對於工程開發徹底沒有影響。不能提交svnxml
.opensdf看名字就差很少知道意思了,好像只有打開工程的時候纔會出現,關閉就會消失,估計是sdf的臨時文件。不能提交svnip
.sln(Visual Studio.Solution)經過爲環境提供對項目、項目項和解決方案在磁盤上的位置的引用,能夠將他們組織到解決方案中。須要提交svn開發
.suo(solution user option)解決方案用戶選項,記錄全部將與解決方案創建關聯的選項,存儲了用戶對界面的自定義配置,包括佈局、斷點、打開的文件等。不能提交svn
項目demo目錄以下:
.vcxproj項目文件
.vcxproj.filters用於項目下文件的虛擬目錄,須要提交到svn
.vcxproj.user用戶的一些相關配置,不能提交svn
除了這些,在Debug和Release目錄下,還有一些文件。
.exe可執行文件
.exp導出庫文件的文件,只有dll工程纔有,包含了導出函數和數據項信息。連接工具使用這類文件來建立動態連接庫。
.def告知編輯器不要以microsoft編譯器的方式處理函數名,而以制定的某方式編譯導出函數,這樣能夠避免因爲VC++編輯器的獨特處理方式引發的連接錯誤。
.ilk增量編譯(incremental linking),取消增量編譯能夠不生成這種文件,對於大工程來講可能會變慢。
.pdb幫助軟件調試的文件
.manifest文件爲了解決不一樣的程序調用相同名稱的可是不一樣版本的dll產生的問題。