4

希望这对其他人有帮助

尝试使用 Cedar BDD 编译 iOS 项目一直失败,在命名空间“std”错误消息中没有名为“shared_ptr”的类型。这显然是一个 C++ 错误,但无法理解为什么 Xcode 使用的 C++ 库没有定义;直到我发现目标的构建设置提供了两个库可供选择时才定义 shared_ptr 类型

  • libstdc++(编译器默认)
  • libc++
4

3 回答 3

7

选择 libc++ 解决了这个问题,看截图Xcode 4.4 构建设置窗口

于 2012-10-10T12:56:12.627 回答
3

Apple 发布了一个非常旧的 libstdc++ 版本,它不支持 C++11,所以如果你使用 libstdc++,你就不能使用 C++11 的特性。

于 2012-10-14T23:43:43.620 回答
1

在xcode中你必须使用#include <memory>,你不能使用#include <memory.h>。请检查这个。

于 2019-01-14T03:08:57.747 回答