【问题标题】:where does unique_ptr live?unique_ptr 住在哪里?
【发布时间】:2012-08-15 10:51:59
【问题描述】:

我正在尝试在 OSX 10.6.5 上使用 gcc 4.6.2 编译一些代码(如下)。这是微不足道的;但编译器找不到 unique_ptr。

#include <memory>

int main(int argc, char** argv)
{
    std::unique_ptr<bar> foo(new bar(0));
}

我是这样编译的:

c++ main.cpp -o ./bin/main -std=gnu++0x -ansi -pedantic -Wall -Wno-long-long -Wno-deprecated -O3 -ansi -DNDEBUG  -I/usr/include -I/opt/local/include 

我尝试明确包含 bits/unique_ptr,但这导致我出现错误,提示 GXX_EXPERIMENTAL_CXX0X 未定义。嗯?正如你在上面看到的,我明确要求 gnu++0x。我也尝试过“-std=c++0x”,结果相同。

我做错了什么?

【问题讨论】:

    标签: c++ macos gcc c++11 macports


    【解决方案1】:

    你的命令有-ansi(相当于-std=c++98),这会覆盖-std=c++0x。尝试删除它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-05
      • 2016-01-19
      • 2012-03-28
      • 2010-09-08
      • 1970-01-01
      • 1970-01-01
      • 2011-05-01
      • 2012-07-25
      相关资源
      最近更新 更多