Visual C++ 编译器选项
优化
代码生成
/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 创建调试多线程可执行文件 |
输出文件
调试
预处理器
语言
链接
预编译头
杂项
@ | 指定响应文件 |
/? | 列出编译器选项 |
/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 | 指定预编译头内存分配限制 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步