2012-10-25 14 views
1

我正在使用CPLEX處理C++項目(VS 2010)。智能感知錯誤/包括具有環境變量的其他庫

我已經包括在項目設置所需CPLEX庫如下:

  • 添加了「附加包含目錄」下C/C++>一般

  • 添加了「附加庫目錄」下接頭>一般

  • 加入.lib文件爲「附加依賴條件」下接頭>輸入

一切都編譯好,但我的問題是,智能感知仍然報告錯誤(紅色波浪下劃線),例如「無法打開源文件」在#include行中,以及「標識符未定義」使用在CPLEX庫中定義的變量類型時。

與其他項目的唯一區別在於不具有這種行爲是,這一次我已經使用Windows環境變量設置包括路徑,即圖書館目錄和include目錄的定義類似於:%CPLEX_STUDIO_DIR%\cplex\include

我已經這樣設置,這樣我就可以在不同的機器上構建這個項目而不會在項目屬性中搞亂。由於CPLEX是分開安裝的,因此使用相對路徑來指定其他目錄不是真正的選擇。

我想重申項目編譯,這只是intellisense錯誤,困擾着我。

我知道我可以關閉intellisense錯誤報告,但如果有人有解決方法,我很樂意聽到它。

親切的問候,

回答

3

解決方法是用$(CPLEX_STUDIO_DIR)\cplex\include替換%CPLEX_STUDIO_DIR%\cplex\include。這是Visual Studio爲其內置變量(如$(VCInstallDir))使用的語法,但它也適用於環境變量(只要它們與內置變量名稱不同)並且也可以通過intellisense識別作爲編譯器。

(我意識到這是一個老問題,但它在搜索結果中排名高,因此它可以幫助別人,即使不是原來的海報。)

+0

這不適合我在VS2017工作 – deltanine