我有一個使用很多的變量名是導致它不是在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
你是對的,對我來說。 –