/Zg(生成函数原型)
更新:2007 年 11 月
此选项为在源文件中定义的每个函数创建函数原型,但不编译该源文件。
/Zg
备注
函数原型包括函数返回类型和一个参数类型列表。参数类型列表从函数的形参类型创建。忽略任何已在源文件中的函数原型。
原型列表被写入标准输出中。您可能发现此列表有助于验证函数的实参和形参是否兼容。可以通过将标准输出重定向到文件以保存此列表。然后可以使用 #include 使该函数原型列表成为源文件的一部分。这样做会导致编译器执行参数类型检查。
如果使用 /Zg 选项,且程序包含具有结构类型、枚举类型或联合类型(或指向这些类型的指针)的形参,则每个结构类型、枚举类型或联合类型的声明必须具有标记(名称)。在下面的示例中,该标记名为 MyStruct。
// Zg_compiler_option.c
// compile with: /Zg
typedef struct MyStruct { int i; } T2;
void f2(T2 * t) {}
Visual C++ 2005 中已否决 /Zg。Visual C++ 编译器计划移除对较旧的 C 样式代码的支持。有关更多信息,请参见Visual C++ 2005 中不推荐使用的编译器选项。
在 Visual Studio 开发环境中设置此编译器选项
打开该项目的“属性页”对话框。有关详细信息,请参见如何:打开项目属性页。
单击“C/C++”文件夹。
单击“命令行”属性页。
在“附加选项”框中键入编译器选项。
以编程方式设置此编译器选项
- 请参见 AdditionalOptions。