來自msdn:http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/vccore/html/_core_compiler_options_listed_by_category.asp
優(yōu)化
|
/O1
|
創(chuàng)建小代碼 |
|
/O2
|
創(chuàng)建快速代碼 |
|
/Oa
|
假設(shè)沒有別名 |
|
/Ob
|
控制內(nèi)聯(lián)展開 |
|
/Od
|
禁用優(yōu)化 |
|
/Og
|
使用全局優(yōu)化 |
|
/Oi
|
生成內(nèi)部函數(shù) |
|
/Op
|
改善浮點(diǎn)數(shù)一致性 |
|
/Os
|
代碼大小優(yōu)先 |
|
/Ot
|
代碼速度優(yōu)先 |
|
/Ow
|
假定在函數(shù)調(diào)用中使用別名 |
|
/Ox
|
使用最大優(yōu)化 (/Ob2gity /Gs) |
|
/Oy
|
省略框架指針 |
代碼生成
|
/arch
|
使用 SSE 或 SSE2 指令生成代碼 |
|
/clr
|
啟用 C++ 的托管擴(kuò)展并產(chǎn)生在公共語言運(yùn)行庫上運(yùn)行的輸出文件 |
|
/EH
|
指定異常處理模型 |
|
/G3
|
優(yōu)化代碼以優(yōu)選 386 處理器。在 Visual C++ 5.0 中已經(jīng)停用,編譯器將忽略此選項(xiàng) |
|
/G4
|
優(yōu)化代碼以優(yōu)選 486 處理器。在 Visual C++ 5.0 中已經(jīng)停用,編譯器將忽略此選項(xiàng) |
|
/G5
|
優(yōu)化代碼以優(yōu)選 Pentium |
|
/G6
|
優(yōu)化代碼以優(yōu)選 Pentium Pro、Pentium II 和 Pentium III 處理器 |
|
/G7
|
針對(duì) Pentium 4 或 Athlon 優(yōu)化代碼。 |
|
/GB
|
與 /G6 等效;將 _M_IX86 的值設(shè)置為 600 |
|
/Gd
|
使用 __cdecl 調(diào)用約定 |
|
/Ge
|
激活堆棧探測(cè) |
/GF
/Gf
|
啟用字符串池 |
|
/Gh
|
調(diào)用掛鉤函數(shù) _penter |
|
/GH
|
調(diào)用掛鉤函數(shù) _pexit |
|
/GL
|
啟用全程序優(yōu)化 |
|
/Gm
|
啟用最小重新生成 |
|
/GR
|
啟用運(yùn)行時(shí)類型信息 (RTTI) |
|
/Gr
|
使用 __fastcall 調(diào)用約定 |
|
/Gs
|
控制堆棧探測(cè) |
|
/GT
|
支持使用靜態(tài)線程本地存儲(chǔ)區(qū)分配的數(shù)據(jù)的纖程安全 |
|
/GX
|
啟用同步異常處理 |
|
/Gy
|
啟用函數(shù)級(jí)鏈接 |
|
/Gz
|
使用 __stdcall 調(diào)用約定 |
|
/MD
|
使用 MSVCRT.lib 創(chuàng)建多線程 DLL |
|
/MDd
|
使用 MSVCRTD.lib 創(chuàng)建調(diào)試多線程 DLL |
|
/ML
|
使用 LIBC.lib 創(chuàng)建單線程可執(zhí)行文件 |
|
/MLd
|
使用 LIBCD.lib 創(chuàng)建調(diào)試單線程可執(zhí)行文件 |
|
/MT
|
使用 LIBCMT.lib 創(chuàng)建多線程可執(zhí)行文件 |
|
/MTd
|
使用 LIBCMTD.lib 創(chuàng)建調(diào)試多線程可執(zhí)行文件 |
輸出文件
/FA
/Fa
|
創(chuàng)建列表文件 設(shè)置列表文件名 |
|
/Fd
|
重命名程序數(shù)據(jù)庫文件 |
|
/Fe
|
重命名可執(zhí)行文件 |
|
/Fm
|
創(chuàng)建映射文件 |
|
/Fo
|
創(chuàng)建對(duì)象文件 |
|
/Fp
|
指定預(yù)編譯頭文件名 |
/FR
/FR
|
生成瀏覽器文件 |
|
/Fx
|
將插入的代碼與源文件合并 |
調(diào)試
|
/GS
|
緩沖區(qū)安全檢查 |
|
/GZ
|
與 /RTC1 相同 |
|
/RTC
|
啟用運(yùn)行時(shí)錯(cuò)誤檢查 |
|
/Wp64
|
檢測(cè) 64 位可移植性問題 |
|
/Yd
|
將完整的調(diào)試信息放在所有對(duì)象文件中 |
|
/Yl
|
創(chuàng)建調(diào)試庫時(shí)插入 PCH 引用 |
|
/Z7
|
生成與 C 7.0 兼容的調(diào)試信息 |
|
/Zd
|
生成行號(hào) |
|
/Zi
|
生成完整的調(diào)試信息 |
預(yù)處理器
|
/AI
|
指定在解析傳遞到 #using 指令的文件引用時(shí)搜索的目錄 |
|
/C
|
在預(yù)處理期間保留注釋 |
|
/D
|
定義常數(shù)和宏 |
|
/E
|
將預(yù)處理器輸出復(fù)制到標(biāo)準(zhǔn)輸出 |
|
/EP
|
將預(yù)處理器輸出復(fù)制到標(biāo)準(zhǔn)輸出 |
|
/Fl
|
預(yù)處理指定的包含文件 |
|
/FU
|
強(qiáng)制使用文件名,就像它已被傳遞到 #using 指令一樣 |
|
/I
|
在目錄中搜索包含文件 |
|
/P
|
將預(yù)處理器輸出寫入文件 |
|
/U
|
移除預(yù)定義宏 |
|
/u
|
移除所有的預(yù)定義宏 |
|
/X
|
忽略標(biāo)準(zhǔn)包含目錄 |
|
|
將調(diào)試信息包含在與“編輯并繼續(xù)”兼容的程序數(shù)據(jù)庫中 |
語言
|
/vd
|
取消或啟用隱藏的 vtordisp 類成員 |
|
/vmb
|
對(duì)指向成員的指針使用最佳的基 |
|
/vmg
|
對(duì)指向成員的指針使用完全一般性 |
|
/vmm
|
聲明多重繼承 |
|
/vms
|
聲明單一繼承 |
|
/vmv
|
聲明虛擬繼承 |
|
/Za
|
禁用語言擴(kuò)展 |
|
/Zc
|
在 /Ze 下指定標(biāo)準(zhǔn)行為 |
|
/Ze
|
啟用語言擴(kuò)展 |
|
/Zg
|
生成函數(shù)原型 |
|
/Zl
|
從 .obj 文件中移除默認(rèn)庫名 |
|
/Zp
n
|
封裝結(jié)構(gòu)成員 |
|
/Zs
|
只檢查語法 |
鏈接
|
/F
|
設(shè)置堆棧大小 |
|
/LD
|
創(chuàng)建動(dòng)態(tài)鏈接庫 |
|
/LDd
|
創(chuàng)建調(diào)試動(dòng)態(tài)鏈接庫 |
|
/link
|
將指定的選項(xiàng)傳遞給 LINK |
|
/MD
|
使用 MSVCRT.lib 編譯以創(chuàng)建多線程 DLL |
|
/MDd
|
使用 MSVCRTD.lib 編譯以創(chuàng)建調(diào)試多線程 DLL |
|
/ML
|
使用 LIBC.lib 編譯以創(chuàng)建單線程可執(zhí)行文件 |
|
/MLd
|
使用 LIBCD.lib 編譯以創(chuàng)建調(diào)試單線程可執(zhí)行文件 |
|
/MT
|
使用 LIBCMT.lib 編譯以創(chuàng)建多線程可執(zhí)行文件 |
|
/MTd
|
使用 LIBCMTD.lib 編譯以創(chuàng)建調(diào)試多線程可執(zhí)行文件 |
預(yù)編譯頭
|
/Y-
|
忽略當(dāng)前生成中的所有其他預(yù)編譯頭編譯器選項(xiàng) |
|
/Yc
|
創(chuàng)建預(yù)編譯頭文件 |
|
/Yd
|
將完整的調(diào)試信息放在所有對(duì)象文件中 |
|
/Yu
|
在生成期間使用預(yù)編譯頭文件 |
|
/YX
|
自動(dòng)處理預(yù)編譯頭 |
雜項(xiàng)
|
@
|
指定響應(yīng)文件 |
|
/?
|
列出編譯器選項(xiàng) |
|
/c
|
編譯但不鏈接 |
|
/H
|
限制外部(公共)名稱的長度 |
|
/HELP
|
列出編譯器選項(xiàng) |
|
/J
|
更改默認(rèn)的 char 類型 |
|
/nologo
|
取消顯示登錄版權(quán)標(biāo)志 |
|
/QI0f
|
確保 Pentium 0F 指令沒有問題 |
|
/QIfdiv
|
FDIV、FPREM、FPTAN 和 FPATAN 指令有缺陷的 Intel Pentium 微處理器的變通方法 |
|
QIfist
|
當(dāng)需要從浮點(diǎn)類型轉(zhuǎn)換為整型時(shí)取消 Helper 函數(shù) _ftol 的調(diào)用 |
|
/showIncludes
|
在編譯期間顯示所有包含文件的列表 |
/Tc
/TC
|
指定 C 源文件 |
/Tp
/TP
|
指定 C++ 源文件 |
|
/V
|
設(shè)置版本字符串 |
|
/W
|
設(shè)置警告等級(jí) |
|
/w
|
禁用所有警告 |
|
/Wall
|
啟用所有警告,包括默認(rèn)情況下禁用的警告 |
|
/WL
|
在從命令行編譯 C++ 源代碼時(shí)啟用錯(cuò)誤信息和警告消息的單行診斷 |
|
/Zm
|
指定預(yù)編譯頭內(nèi)存分配限制 |
請(qǐng)參見
C/C++ 生成參考 | 編譯器選項(xiàng) | 設(shè)置編譯器選項(xiàng)