C++項目配置——VisualStudio開發環境

來源:互聯網
上載者:User

0.主要用於添加標頭檔路徑,庫檔案路徑,庫

.\ :表示當前檔案夾(就是.h,.cpp檔案所在的檔案夾)

..\ :表示父資料夾

1.配置:debug,release,所有配置(項目中常常需要debug和release兩版本) 

  平台:win32,x64(當引用的是64位的軟體/標頭檔,否則引用的lib會出現錯誤:.obj檔案找不到引用的xx函數)

2.常規

  • 常規->輸出目錄:$(SolutionDir)..\..\..\lib\$(Configuration)\
  • 常規->中間目錄:$(SolutionDir)$(ConfigurationName)
  • 常規->配置類型(動態庫.dll,靜態庫.lib,應用程式.exe)
  • 常規->字元集(使用多位元組字元集,使用Unicode字元集(項目開發中常用的字元集))

3.C/C++->常規->附加元件封裝含目錄 :..\..\..\..\include;..\..\..\..\..\3rdparty\Boost_1_46_1;inc;

4.連結器

  • 連結器->常規->輸出檔案:..\..\bin\$(ProjectName).exe  
    //產生的.exe是在.h,.cpp所在檔案夾的父資料夾的父資料夾下的bin檔案夾中
  • 連結器->常規->附加庫目錄:..\..\..\..\lib\$(Configuration);..\..\..\..\..\3rdparty\Boost_1_46_1\lib;C:\Program
    Files (x86)\MySQL\MySQL Server 5.5\lib;%(AdditionalLibraryDirectories)
  • 連結器->輸入->附加依賴項:sknet.lib;sknetlib.lib;databasedll.lib;%(AdditionalDependencies)

5.建置事件->產生後事件->命令列

copy DataStruct.h ..\..\..\..\include\DataStruct.h

copy DBHelp.h ..\..\..\..\include\DBHelp.h

copy UserBLL.h ..\..\..\..\include\UserBLL.h

copy DatabaseDll.h ..\..\..\..\include\DatabaseDll.h  //說明:正在輸出標頭檔DatabaseDll.h到公用Include目錄…

xcopy /e /c /y inc $(SolutionDir)..\..\include\Network\  

//SKIM(trunk(include,lib,src(server,client)),doc)

VC專案檔說明
  • .opt 工程關於開發環境的參數檔案。如工具條位置等資訊;
  • .aps (AppStudio File),資源輔助檔案,二進位格式,一般不用去管他.
  • .clw ClassWizard資訊檔,實際上是INI檔案的格式,有興趣可以研究一下.有時候ClassWizard出問題,手工修改CLW檔案可以解決.如果此檔案不存在的話,每次用ClassWizard的時候繪提示你是否重建.
  • .dsp (DeveloperStudio Project):專案檔,文字格式設定,不過不熟悉的話不要手工修改.DSW(DeveloperStudio Workspace)是工作區檔案,其他特點和DSP差不多.
  • .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後會自動產生。
VC項目配置的那些宏

ConfigurationName 

配置名字,通常是Debug或者Release 

IntDir 

編譯器使用的中間目錄,產出obj檔案 

OutDir 

連結器使用的輸出目錄 

ProjectDir 

項目目錄 

ProjectName 

項目名字 

SolutionDir 

解決方案目錄 

TargetDir 

目標輸出檔案所在的目錄 

TargetExt 

目標輸出的副檔名 

TargetFileName 

目標輸出檔案名,包括副檔名 

TargetName 

目標輸出名,不包括副檔名 

TargetPath 

目標輸出檔案的全路徑名 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.