2012-06-08 81 views
3

在XCode中,我最近製作並測試了一個使用boost的處理庫。我只是在IDE中設置了一個基本項目,編碼完成,並且它沒有問題。名字空間'std'中沒有名爲'forward'的成員

我現在想在另一個應用程序中使用該庫。另一個應用程序的xcode項目是使用第三方工具自動創建的。當我嘗試在這個其他應用程序中包含基於boost的庫時,我得到錯誤說明。 。 。

No member named 'forward' in namespace 'std'

而且,就行了。 。

#include <tuple> 

給出了預處理器錯誤

'tuple' file not found

看到,因爲原始庫建立在我的機器上就好了,錯誤必須下降到構建設置有差別,但我看不到差異並且不知道是比較兩個不同項目的構建設置的好方法。任何人都可以建議可能會導致我的問題的構建設置?

編輯:

在這兩個項目中,設定爲

  • 編譯器C/C++ /目標-C =蘋果LLVM編譯器3.0

  • C++語言的方言=編譯器默認

  • C++標準庫=編譯器默認

編輯2 [解決]:

  • 我仍然有C++ 11方言在目標設置中啓用。衛生部!
+0

您是否已從XCode偏好設置中的下載選項卡安裝了「命令行實用程序」?出於某種原因,很多C++的東西似乎並沒有隨默認的XCode安裝而來。 – pmdj

回答

4

您的項目編譯爲C++ 11並且正在使用C++ 11標準庫(std :: forward和頭是新的)。 原始項目似乎以C++ 03標準庫的形式編譯爲C++ 03,因此這些新功能不可用。

+0

我檢查了語言/圖書館設置,它們看起來完全相同(請參閱編輯)。是否有另一個我缺少的設置? – learnvst

+0

請參閱編輯2. XCode。 。 。 grrr。 。 。 。 – learnvst

相關問題