優化
/o1建立小**
/o2建立快速**
/oa假設沒有別名
/ob控制內聯展開
/od禁用優化
/og使用全域性優化
/oi生成內部函式
/op改善浮點數一致性
/os**大小優先
/ot**速度優先
/ow假定在函式呼叫中使用別名
/ox使用最大優化 (/ob2gity /gs)
/oy省略框架指標
**生成
/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 建立除錯多執行緒可執行檔案
輸出檔案
/fa/fa
建立列表檔案
設定列表檔名
/fd重新命名程式資料庫檔案
/fe重新命名可執行檔案
/fm建立對映檔案
/fo建立物件檔案
/fp指定預編譯頭檔名
/fr/fr
生成瀏覽器檔案
/fx將插入的**與原始檔合併
除錯
/gs緩衝區安全檢查
/gz與 /rtc1 相同
/rtc
啟用執行時錯誤檢查
/wp64
檢測 64 位可移植性問題
/yd將完整的除錯資訊放在所有物件檔案中
/yl建立除錯庫時插入 pch 引用
/z7生成與 c 7.0 相容的除錯資訊
/zd生成行號
/zi生成完整的除錯資訊
預處理器
/ai指定在解析傳遞到 #using 指令的檔案引用時搜尋的目錄
/c在預處理期間保留注釋
/d定義常數和巨集
/e將預處理器輸出複製到標準輸出
/ep將預處理器輸出複製到標準輸出
/fl預處理指定的包含檔案
/fu強制使用檔名,就像它已被傳遞到 #using 指令一樣
/i在目錄中搜尋包含檔案
/p將預處理器輸出寫入檔案
/u移除預定義巨集
/u移除所有的預定義巨集
/x忽略標準包含目錄
/zi將除錯資訊包含在與「編輯並繼續」相容的程式資料庫中
語言
/vd取消或啟用隱藏的 vtordisp 類成員
/vmb
對指向成員的指標使用最佳的基
/vmg
對指向成員的指標使用完全一般性
/vmm
宣告多重繼承
/vms
宣告單一繼承
/vmv
宣告虛擬繼承
/za禁用語言擴充套件
/zc在 /ze 下指定標準行為
/ze啟用語言擴充套件
/zg生成函式原型
/zl從 .obj 檔案中移除預設庫名
/zpn
封裝結構成員
/zs只檢查語法
鏈結
/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指定預編譯頭記憶體分配限制
請參見
Visual C 編譯器選項
visual c 編譯器選項 選項 目的 指定響應檔案 列出編譯器選項 ai指定在解析傳遞到 using 指令的檔案引用時搜尋的目錄 arch 使用sse 或sse2 指令生成 c 在預處理期間保留注釋 c 編譯但不鏈結 clr 啟用c 的託管擴充套件並產生在公共語言執行庫上執行的輸出檔案 d 定義...
Visual C 編譯器選項
選項 目的 指定響應檔案 列出編譯器選項 ai指定在解析傳遞到 using 指令的檔案引用時搜尋的目錄 arch 使用 sse 或sse2 指令生成 c 在預處理期間保留注釋 c 編譯但不鏈結 clr 啟用 c 的託管擴充套件並產生在公共語言執行庫上執行的輸出檔案 d 定義常數和巨集 e 將預處理器...
Visual C 編譯器選項
visual c 編譯器選項 gd gr gz 呼叫約定 gd gr gz 這些選項確定 gd 為預設設定,對除c 成員函式和標記為 stdcall或 fastcall的函式以外的所有函式指定c 呼叫約定。gr 對除c 成員函式和標記為 cdecl或 stdcall的函式以外的所有函式指定 fast...