2012-06-08 157 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

相关问题