<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Moveconstructor wird nicht aufgerufen... Warum?]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann mir vielleicht kurz jemand erklären, warum im nachfolgenden Code der Moveconstructor nicht(!!) aufgerufen wird? Wenn ich den Moveconstructor nicht hinschreibe, lässt sich das Programm auch nicht compilieren...</p>
<p>Env: FreeBSD 10.1/clang/C++11</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;

class Handle {
public:
    int get_member() const { return member_; }

    Handle(Handle&amp;&amp; rhr) : member_(rhr.member_)
    {
        cout &lt;&lt; &quot;Move...&quot; &lt;&lt; endl;  // Wird niemals aufgerufen!
    }

    ~Handle()
    {
        cout &lt;&lt; &quot;Destrukt: &quot; &lt;&lt; member_ &lt;&lt; endl;
    }

private:
    Handle() = delete;
    Handle(const Handle&amp;) = delete;
    Handle(Handle&amp;&amp;) = delete;
    void operator=(const Handle&amp;) = delete;
    void operator=(Handle&amp;&amp;) = delete;

    Handle(int member) : member_(member) {}

public:
    static Handle create(int params);

private:
    int member_;
};

Handle
Handle::create(int params)
{
    return Handle(params);
}

int
main()
{
    Handle h = Handle::create(42);
    cout &lt;&lt; h.get_member() &lt;&lt; endl;
}
</code></pre>
<p>Danke schonmal für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/338455/moveconstructor-wird-nicht-aufgerufen-warum</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Apr 2026 11:52:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/338455.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 16 Jun 2016 17:16:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Moveconstructor wird nicht aufgerufen... Warum? on Thu, 16 Jun 2016 17:16:03 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann mir vielleicht kurz jemand erklären, warum im nachfolgenden Code der Moveconstructor nicht(!!) aufgerufen wird? Wenn ich den Moveconstructor nicht hinschreibe, lässt sich das Programm auch nicht compilieren...</p>
<p>Env: FreeBSD 10.1/clang/C++11</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;

class Handle {
public:
    int get_member() const { return member_; }

    Handle(Handle&amp;&amp; rhr) : member_(rhr.member_)
    {
        cout &lt;&lt; &quot;Move...&quot; &lt;&lt; endl;  // Wird niemals aufgerufen!
    }

    ~Handle()
    {
        cout &lt;&lt; &quot;Destrukt: &quot; &lt;&lt; member_ &lt;&lt; endl;
    }

private:
    Handle() = delete;
    Handle(const Handle&amp;) = delete;
    Handle(Handle&amp;&amp;) = delete;
    void operator=(const Handle&amp;) = delete;
    void operator=(Handle&amp;&amp;) = delete;

    Handle(int member) : member_(member) {}

public:
    static Handle create(int params);

private:
    int member_;
};

Handle
Handle::create(int params)
{
    return Handle(params);
}

int
main()
{
    Handle h = Handle::create(42);
    cout &lt;&lt; h.get_member() &lt;&lt; endl;
}
</code></pre>
<p>Danke schonmal für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2499137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2499137</guid><dc:creator><![CDATA[tsn]]></dc:creator><pubDate>Thu, 16 Jun 2016 17:16:03 GMT</pubDate></item><item><title><![CDATA[Reply to Moveconstructor wird nicht aufgerufen... Warum? on Thu, 16 Jun 2016 17:17:35 GMT]]></title><description><![CDATA[<p><a href="http://en.cppreference.com/w/cpp/language/copy_elision" rel="nofollow">http://en.cppreference.com/w/cpp/language/copy_elision</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2499138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2499138</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 16 Jun 2016 17:17:35 GMT</pubDate></item><item><title><![CDATA[Reply to Moveconstructor wird nicht aufgerufen... Warum? on Thu, 16 Jun 2016 17:29:33 GMT]]></title><description><![CDATA[<p>Perfekt! Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2499140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2499140</guid><dc:creator><![CDATA[tsn]]></dc:creator><pubDate>Thu, 16 Jun 2016 17:29:33 GMT</pubDate></item></channel></rss>