1

-std=c++11在 Visual Studio 中,通过项目中“编译器参数”中的“附加选项”进行设置(使用 vs-android) 。这很好,因为它将它应用于所有编译的文件。

除非它尝试编译 C 文件:

cc1.exe:警告:命令行选项“-std=c++11”对 C++/ObjC++ 有效,但对 C 无效[默认启用]

这只是一个警告,但它每次都会稍微减慢构建速度,并且有很多纯 C 文件。

有什么办法可以在 Visual Studio 中对此进行例外处理,所以它不是针对 C 文件,而只是针对 C++ 文件?

4

1 回答 1

1

唉,没有办法以你正在寻找的方式做到这一点。

根据您是否使用任何其他全局命令行选项,可能对您有用的一件事是选择项目中的所有 .C 文件,并在编译器选项中取消选中“从父级继承或项目默认值”复选框,位于“附加选项”框上方。您应该能够通过 ctrl 选择它们,然后右键单击/属性/等,一次性为所有 C 文件执行此操作。然后,您在项目级别设置的任何额外命令行选项都不会用于这些文件。

于 2013-09-16T21:41:42.763 回答