2013-04-08 75 views
1

我想在項目中結合一些C和C++代碼,之前我沒有問題,但我現在第一次嘗試VS2012,並得到很多來自TRI頭部的錯誤,我沒有明確包含。VS2012混合C和Cpp,庫衝突

我在想這可能是一個混合,因爲它試圖編譯我的c代碼與此cpp頭。它看起來像試圖理解C++模板代碼的C編譯器錯誤。我在哪裏可以從VS2012界面中看出這一點?我是否需要對我的c和cpp文件做些什麼來使編譯器正確對待它們?

Error 1 error C2143: syntax error : missing '{' before '<' C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xtr1common 15 1 example~ 
Error 2 error C2059: syntax error : '<' C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xtr1common 15 1 example~ 
Error 3 error C2143: syntax error : missing '{' before '<' C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xtr1common 20 1 example~ 
Error 4 error C2059: syntax error : '<' C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xtr1common 20 1 example~ 
Error 5 error C2016: C requires that a struct or union has at least one member C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xtr1common 28 1 example~ 
+1

顯示代碼。從這些特定的錯誤消息中找出錯誤並不容易。 – 2013-04-08 07:49:01

+1

今天我的ESP很弱。所以你可能會顯示一些代碼。 – user93353 2013-04-08 07:50:55

+0

以下是包含頭文件的示例項目。在maxcpp-master/examples/msp/example〜.sln中打開示例https://dl.dropbox.com/u/8165817/maxcpptest.zip – 2013-04-08 08:01:42

回答

1

沒關係。自從我使用VS之後已經有一段時間了,並且忘記了它不一定把cpp文件當作C++。我必須將「編譯爲」選項設置爲C++。