Wie kann ich C ++ 11-Code mit Orwell Dev-C ++ kompilieren?

Versucht, den folgenden Code zu kompilieren:

#include <iostream>
#include <memory>

struct Foo {
    Foo() { std::cout << "Foo::Foo\n"; }
    ~Foo() { std::cout << "Foo::~Foo\n"; }
    void bar() { std::cout << "Foo::bar\n"; }
};

void f(const Foo &foo)
{
    std::cout << "f(const Foo&)\n";
}

int main()
{
    std::unique_ptr<Foo> p1(new Foo);  // p1 owns Foo
    if (p1) p1->bar();

    {
        std::unique_ptr<Foo> p2(std::move(p1));  // now p2 owns Foo
        f(*p2);

        p1 = std::move(p2);  // ownership returns to p1
        std::cout << "destroying p2...\n";
    }

    if (p1) p1->bar();

    // Foo instance is destroyed when p1 goes out of scope
}

mit Orwell Dev-c ++ 5.3.0.3 ergibt sich folgender Fehler:

'unique_ptr' ist kein Mitglied von 'std'.

Wie kann ich damit umgehen?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage