Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/134.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误:‘;独特的ptr&x2019;不是‘;标准&x2019;_C++_C++11_G++_Unique Ptr - Fatal编程技术网

C++ 错误:‘;独特的ptr&x2019;不是‘;标准&x2019;

C++ 错误:‘;独特的ptr&x2019;不是‘;标准&x2019;,c++,c++11,g++,unique-ptr,C++,C++11,G++,Unique Ptr,我想这是不言自明的——我似乎不能使用C++11的特性,尽管我认为我已经正确地设置了一切——这可能意味着我没有 这是我的密码: #include <cstdlib> #include <iostream> class Object { private: int value; public: Object(int val) { value = val; } int g

我想这是不言自明的——我似乎不能使用C++11的特性,尽管我认为我已经正确地设置了一切——这可能意味着我没有

这是我的密码:

#include <cstdlib>
#include <iostream>

class Object {
    private:
        int value;

    public:
        Object(int val) {
            value = val;
        }

        int get_val() {
            return value;
        }

        void set_val(int val) {
            value = val;
        }
};

int main() {

    Object *obj = new Object(3);
    std::unique_ptr<Object> smart_obj(new Object(5));
    std::cout << obj->get_val() << std::endl;
    return 0;
}
下面是我编译代码的方式:

ubuntu@ubuntu:~/Desktop$g++main.cpp-o运行--std=c++11
main.cpp:在函数“int main()”中:
main.cpp:25:2:错误:“unique_ptr”不是“std”的成员
main.cpp:25:24:错误:在“>”标记之前应该有主表达式
main.cpp:25:49:错误:“smart_obj”未在此范围内声明
请注意,我尝试了
-std=c++11
-std=c++0x
,但均无效


我正在英特尔x64机器上的闪存驱动器上运行Ubuntu12.04 LTS。

您需要在定义和的位置包含标题

#include <memory>

因此,我在2020年学到的-memory.h位于/usr/include和/usr/include/c++/4.8.5中,您需要在第一个之前找到第二个。
在Eclipse中,使用项目->属性->路径和符号->包含->添加来设置顺序。。。如果需要,设置第一个

,你需要包含包含解决问题的“包含”,至少在我的UBTO to Linux机器

告诉你需要包括的标题。对不起,我是C++新手。如果它是在中定义的,为什么要用作std::unique_ptr?@AoI:“std”是名称空间。“memory”仅表示定义它的头文件。这是一个非常好的学习资源
g++ main.cpp -o run -std=c++11
//                  ^