我有一个使用很多的变量名是导致它不是在C++编译旧的C++项目,new
,this
等不能在Visual Studio编译C 2012
所以要尝试,看看我是否能得到它编译我已经做到了这一点:
- 新的空C++项目
- 增加了一个新的类,重命名的文件
.c
(下面的代码) - 清空头文件
- 项目属性 - > C/C++ - >高级 - >编译正如=编译为C代码(/ TC)
TEST.C:
#include "Test.h"
int test()
{
int new = 123;
return new;
}
但它仍然抱怨new
,所以它的不把它编译成纯粹的C.我错过了什么?
编辑
我知道,new
,this
等在c++
保留名称。但我试图编译这个为c
而我试图避免通过重命名在一个大型项目。如果我告诉它编译为c
,为什么它仍然执行这些保留名称?
new是C++,纯c是malloc。您的旧项目是C++ –
@PeteBel'new'只是在旧项目中用作变量名称,就像在测试方法中一样。 – weston
你是对的,对我来说。 –