微软C/C++ 编译器选项 |
-优化- |
/O1 |
最小化空间 |
minimize space |
/Op[-] |
改善浮点数一致性 |
improve floating-pt consistency |
/O2 |
最大化速度 |
maximize speed |
/Os |
优选代码空间 |
favor code space |
/Oa |
假设没有别名 |
assume no aliasing |
/Ot |
优选代码速度 |
favor code speed |
/Ob |
内联展开(默认 n=0) |
inline expansion (default n=0) |
/Ow |
假设交叉函数别名 |
assume cross-function aliasing |
/Od |
禁用优化(默认值) |
disable optimizations (default) |
/Ox |
最大化选项。(/Ogityb2 /Gs) |
maximum opts. (/Ogityb1 /Gs) |
/Og |
启用全局优化 |
enable global optimization |
/Oy[-] |
启用框架指针省略 |
enable frame pointer omission |
/Oi |
启用内建函数 |
enable intrinsic functions |
-代码生成- |
/G3 |
为 80386 进行优化 |
optimize for 80386 |
/G4 |
为 80486 进行优化 |
optimize for 80486 |
/GR[-] |
启用 C++ RTTI |
enable C++ RTTI |
/G5 |
为 Pentium 进行优化 |
optimize for Pentium |
/G6 |
为 Pentium Pro 进行优化 |
optimize for Pentium Pro |
/GX[-] |
启用 C++ 异常处理(与 /EHsc 相同) |
enable C++ EH (same as /EHsc) |
/EHs |
启用同步 C++ 异常处理 |
enable synchronous C++ EH |
/GD |
为 Windows DLL 进行优化 |
optimize for Windows DLL |
/GB |
为混合模型进行优化(默认) |
optimize for blended model (default) |
/EHa |
启用异步 C++ 异常处理 |
enable asynchronous C++ EH |
/Gd |
__cdecl 调用约定 |
__cdecl calling convention |
/EHc |
extern“C”默认为 nothrow |
extern "C" defaults to nothrow |
/Gr |
__fastcall 调用约定 |
__fastcall calling convention |
/Gi[-] |
启用增量编译 |
enable incremental compilation |
/Gz |
__stdcall 调用约定 |
__stdcall calling convention |
/Gm[-] |
启用最小重新生成 |
enable minimal rebuild |
/GA |
为 Windows 应用程序进行优化 |
optimize for Windows Application |
/Gf |
启用字符串池 |
enable string pooling |
/QIfdiv[-] |
启用 Pentium FDIV 修复 |
enable Pentium FDIV fix |
/GF |
启用只读字符串池 |
enable read-only string pooling |
/QI0f[-] |
启用 Pentium 0x0f 修复 |
enable Pentium 0x0f fix |
/Gy |
分隔链接器函数 |
separate functions for linker |
/GZ |
启用运行时调试检查 |
enable runtime debug checks |
/Gh |
启用钩子函数调用 |
enable hook function call |
/Ge |
对所有函数强制堆栈检查 |
force stack checking for all funcs |
/Gs[num] |
禁用堆栈检查调用 |
disable stack checking calls |
-输出文件- |
/Fa[file] |
命名程序集列表文件 |
name assembly listing file |
/Fo |
命名对象文件 |
name object file |
/FA[sc] |
配置程序集列表 |
configure assembly listing |
/Fp |
命名预编译头文件 |
name precompiled header file |
/Fd[file] |
命名 .PDB 文件 |
name .PDB file |
/Fr[file] |
命名源浏览器文件 |
name source browser file |
/Fe |
命名可执行文件 |
name executable file |
/FR[file] |
命名扩展 .SBR 文件 |
name extended .SBR file |
/Fm[file] |
命名映射文件 |
name map file |
-预处理器- |
/FI |
命名强制包含文件 |
name forced include file |
/C |
不吸取注释 |
don't strip comments |
/U |
移除预定义宏 |
remove predefined macro |
/D{=|#} |
定义宏 |
define macro |
/u |
移除所有预定义宏 |
remove all predefined macros |
/E |
将预处理定向到标准输出 |
preprocess to stdout |
/I
|
添加到包含文件的搜索路径 |
add to include search path |
/EP |
将预处理定向到标准输出,不要带行号 |
preprocess to stdout, no #line |
/X |
忽略“标准位置” |
ignore "standard places" |
/P |
预处理到文件 |
preprocess to file |
-语言- |
/Zi |
启用调试信息 |
enable debugging information |
/Zl |
忽略 .OBJ 中的默认库名 |
omit default library name in .OBJ |
/ZI |
启用调试信息的“编辑并继续”功能 |
enable Edit and Continue debug info |
/Zg |
生成函数原型 |
generate function prototypes |
/Z7 |
启用旧式调试信息 |
enable old-style debug info |
/Zs |
只进行语法检查 |
syntax check only |
/Zd |
仅要行号调试信息 |
line number debugging info only |
/vd{0|1} |
禁用/启用 vtordisp |
disable/enable vtordisp |
/Zp[n] |
在 n 字节边界上包装结构 |
pack structs on n-byte boundary |
/vm |
指向成员的指针类型 |
type of pointers to members |
/Za |
禁用扩展(暗指 /Op) |
disable extensions (implies /Op) |
/noBool |
禁用“bool”关键字 |
disable "bool" keyword |
/Ze |
启用扩展(默认) |
enable extensions (default) |
- 杂项 - |
/?, /help |
打印此帮助消息 |
print this help message |
/c |
只编译,不链接 |
compile only, no link |
/W |
设置警告等级(默认 n=1) |
set warning level (default n=1) |
/H |
最大化外部名称长度 |
max external name length |
/J |
默认 char 类型是 unsigned |
default char type is unsigned |
/nologo |
取消显示版权消息 |
suppress copyright message |
/WX |
将警告视为错误 |
treat warnings as errors |
/Tc |
将文件编译为 .c |
compile file as .c |
/Yc[file] |
创建 .PCH 文件 |
create .PCH file |
/Tp |
将文件编译为 .cpp |
compile file as .cpp |
/Yd |
将调试信息放在每个 .OBJ 中 |
put debug info in every .OBJ |
/TC |
将所有文件编译为 .c |
compile all files as .c |
/TP |
将所有文件编译为 .cpp |
compile all files as .cpp |
/Yu[file] |
使用 .PCH 文件 |
use .PCH file |
/V |
设置版本字符串 |
set version string |
/YX[file] |
自动的 .PCH 文件 |
automatic .PCH |
/w |
禁用所有警告 |
disable all warnings |
/Zm |
最大内存分配(默认为 %) |
max memory alloc (% of default) |
-链接- |
/MD |
与 MSVCRT.LIB 链接 |
link with MSVCRT.LIB |
/MDd |
与 MSVCRTD.LIB 调试库链接 |
link with MSVCRTD.LIB debug lib |
/ML |
与 LIBC.LIB 链接 |
link with LIBC.LIB |
/MLd |
与 LIBCD.LIB 调试库链接 |
link with LIBCD.LIB debug lib |
/MT |
与 LIBCMT.LIB 链接 |
link with LIBCMT.LIB |
/MTd |
与 LIBCMTD.LIB 调试库链接 |
link with LIBCMTD.LIB debug lib |
/LD |
创建 .DLL |
Create .DLL |
/F |
设置堆栈大小 |
set stack size |
/LDd |
创建 .DLL 调试库 |
Create .DLL debug libary |
/link |
[链接器选项和库] |
[linker options and libraries] |