5

在 XCode 中,我最近制作并测试了一个使用 boost 的处理库。我刚刚在 IDE 中设置了一个基本项目,编码了,它构建得很好。

我现在想在另一个应用程序中使用该库。另一个应用程序的 xcode 项目是使用 3rd 方工具自动生成的。当我尝试在这个其他应用程序中包含我的基于 boost 的库时,我收到错误声明。. .

No member named 'forward' in namespace 'std'

还有,线。.

#include <tuple>

给出预处理器错误

'tuple' file not found

看到原始库在我的机器上构建得很好,错误必须归结为构建设置的差异,但我看不到差异,也不知道比较两个不同项目的构建设置的好方法。谁能建议可能导致我出现问题的构建设置?

编辑:

在这两个项目中,设置为

  • C/C++/Objective-C 的编译器 = Apple LLVM 编译器 3.0

  • C++ 语言方言 = 编译器默认值

  • C++ 标准库 = 编译器默认值

编辑 2 [已解决]:

  • 我仍然在目标设置中启用了 C++11 方言。多哈!
4

1 回答 1

6

您的项目编译为 C++11 并使用 C++11 标准库(std::forward 和标头是新的)。原始项目似乎使用 C++03 标准库编译为 C++03,因此这些新功能不可用。

于 2012-06-08T12:06:26.700 回答