为什么g++编译器找不到unique_ptr?

kad*_*ina 2 c++ unique-ptr

我正在尝试编译一个包含 unique_ptr 的小 C++ 代码,如下所示。

#include <iostream>
#include <memory>

using namespace std;

int main()
{
    unique_ptr<int> p1(new int);
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用 g++ 编译代码时,它抛出“unique_ptr”未在此范围内声明。我试图在 Linux 机器上编译。即使我尝试使用 '-std=c++11' 选项。它说的是“无法识别的命令行选项 -std=c++11”。任何人都可以让我知道如何解决这个问题吗?

Cor*_*mer 5

你需要包括它,它来自<memory>图书馆

#include <memory>
Run Code Online (Sandbox Code Playgroud)

  • 希望你包含了 &lt;memory&gt;,而不是 &lt;momory&gt; (3认同)