主要通过VC 的菜单项Project->Settings->C/C++页来完成。我们可以看到这一页的最下面Project Options 中的内容,一般如下: /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /D "_MBCS" /Fp"Debug/WritingDlgTest.pch" /Yu"stdafx.h" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c 各个参数代表的意义,可以参考Msdn。比如/nologo 表示编译时不在输出窗口显示这些设置(我们可以把这个参数去掉来看看效果)等等。一般我们不会直接修改这些设置,而是通过这一页最上面的Category中的各项来完成。 1) General:一些总体设置。 Warning level 用来控制警告信息,其中Level 1 是最严重的级别; Warnings as errors 将警告信息当作错误处理; Optimizations 代码优化,可以在Category的Optimizations 项中进行更细的设置; Generate browse info 用以生成.sbr 文件,记录类、变量等符号信息,可以在Category的Listing Files项中进行更多的设置。 Debug info 生成调试信息: o None,不产生任何调试信息(编译比较快); o Line Numbers Only,仅生成全局的和外部符号的调试信息到.OBJ 文件或.EXE 文件,减小目标文件的尺寸; o C 7.0- Compatible,记录调试器用到的所有符号信息到.OBJ 文件和.EXE 文件; o Program Database,创建.PDB 文件记录所有调试信息; o Program Database for "Edit & Continue",创建.PDB 文件记录所有调试信息,并且支持调试时编辑。 2) C++ Language Pointer-to-member representation 用来设置类定义/引用的先后关系: o Best-Case Always,表示在引用类之前该类肯定已经定义; o General-Purpose Always,? Point to Any Class Point to Single- and Multiple-Inheritance Classes Point to Single-Inheritance Classes Enable Exception Handling,进行同步的异常处理; Enable Run-Time Type Information 迫使编译器增加代码在运行时进行对象类型检查; Disable Construction Displacements 设置类构造/析构函数调用虚函数问题。 3) Code Generation Processor 表示代码指令优化,可以为 80386、80486、Pentium、Pentium Pro,或者 Blend 表示混合以上各种优化。 Use run-time library 用以...