來自msdn:http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/vccore/html/_core_compiler_options_listed_by_category.asp
優化
代碼生成
/arch
|
使用 SSE 或 SSE2 指令生成代碼 |
/clr
|
啟用 C++ 的托管擴展并產生在公共語言運行庫上運行的輸出文件 |
/EH
|
指定異常處理模型 |
/G3
|
優化代碼以優選 386 處理器。在 Visual C++ 5.0 中已經停用,編譯器將忽略此選項 |
/G4
|
優化代碼以優選 486 處理器。在 Visual C++ 5.0 中已經停用,編譯器將忽略此選項 |
/G5
|
優化代碼以優選 Pentium |
/G6
|
優化代碼以優選 Pentium Pro、Pentium II 和 Pentium III 處理器 |
/G7
|
針對 Pentium 4 或 Athlon 優化代碼。 |
/GB
|
與 /G6 等效;將 _M_IX86 的值設置為 600 |
/Gd
|
使用 __cdecl 調用約定 |
/Ge
|
激活堆棧探測 |
/GF
/Gf
|
啟用字符串池 |
/Gh
|
調用掛鉤函數 _penter |
/GH
|
調用掛鉤函數 _pexit |
/GL
|
啟用全程序優化 |
/Gm
|
啟用最小重新生成 |
/GR
|
啟用運行時類型信息 (RTTI) |
/Gr
|
使用 __fastcall 調用約定 |
/Gs
|
控制堆棧探測 |
/GT
|
支持使用靜態線程本地存儲區分配的數據的纖程安全 |
/GX
|
啟用同步異常處理 |
/Gy
|
啟用函數級鏈接 |
/Gz
|
使用 __stdcall 調用約定 |
/MD
|
使用 MSVCRT.lib 創建多線程 DLL |
/MDd
|
使用 MSVCRTD.lib 創建調試多線程 DLL |
/ML
|
使用 LIBC.lib 創建單線程可執行文件 |
/MLd
|
使用 LIBCD.lib 創建調試單線程可執行文件 |
/MT
|
使用 LIBCMT.lib 創建多線程可執行文件 |
/MTd
|
使用 LIBCMTD.lib 創建調試多線程可執行文件 |
輸出文件
調試
預處理器
/AI
|
指定在解析傳遞到 #using 指令的文件引用時搜索的目錄 |
/C
|
在預處理期間保留注釋 |
/D
|
定義常數和宏 |
/E
|
將預處理器輸出復制到標準輸出 |
/EP
|
將預處理器輸出復制到標準輸出 |
/Fl
|
預處理指定的包含文件 |
/FU
|
強制使用文件名,就像它已被傳遞到 #using 指令一樣 |
/I
|
在目錄中搜索包含文件 |
/P
|
將預處理器輸出寫入文件 |
/U
|
移除預定義宏 |
/u
|
移除所有的預定義宏 |
/X
|
忽略標準包含目錄 |
|
將調試信息包含在與“編輯并繼續”兼容的程序數據庫中 |
語言
鏈接
/F
|
設置堆棧大小 |
/LD
|
創建動態鏈接庫 |
/LDd
|
創建調試動態鏈接庫 |
/link
|
將指定的選項傳遞給 LINK |
/MD
|
使用 MSVCRT.lib 編譯以創建多線程 DLL |
/MDd
|
使用 MSVCRTD.lib 編譯以創建調試多線程 DLL |
/ML
|
使用 LIBC.lib 編譯以創建單線程可執行文件 |
/MLd
|
使用 LIBCD.lib 編譯以創建調試單線程可執行文件 |
/MT
|
使用 LIBCMT.lib 編譯以創建多線程可執行文件 |
/MTd
|
使用 LIBCMTD.lib 編譯以創建調試多線程可執行文件 |
預編譯頭
/Y-
|
忽略當前生成中的所有其他預編譯頭編譯器選項 |
/Yc
|
創建預編譯頭文件 |
/Yd
|
將完整的調試信息放在所有對象文件中 |
/Yu
|
在生成期間使用預編譯頭文件 |
/YX
|
自動處理預編譯頭 |
雜項
@
|
指定響應文件 |
/?
|
列出編譯器選項 |
/c
|
編譯但不鏈接 |
/H
|
限制外部(公共)名稱的長度 |
/HELP
|
列出編譯器選項 |
/J
|
更改默認的 char 類型 |
/nologo
|
取消顯示登錄版權標志 |
/QI0f
|
確保 Pentium 0F 指令沒有問題 |
/QIfdiv
|
FDIV、FPREM、FPTAN 和 FPATAN 指令有缺陷的 Intel Pentium 微處理器的變通方法 |
QIfist
|
當需要從浮點類型轉換為整型時取消 Helper 函數 _ftol 的調用 |
/showIncludes
|
在編譯期間顯示所有包含文件的列表 |
/Tc
/TC
|
指定 C 源文件 |
/Tp
/TP
|
指定 C++ 源文件 |
/V
|
設置版本字符串 |
/W
|
設置警告等級 |
/w
|
禁用所有警告 |
/Wall
|
啟用所有警告,包括默認情況下禁用的警告 |
/WL
|
在從命令行編譯 C++ 源代碼時啟用錯誤信息和警告消息的單行診斷 |
/Zm
|
指定預編譯頭內存分配限制 |
請參見
C/C++ 生成參考 | 編譯器選項 | 設置編譯器選項