<?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[Konstruktor: Parameter als Referenz]]></title><description><![CDATA[<p>Macht es einen Unterschied ob ich dem Konstruktor Parameter als Referenz übergebe oder by-value, wenn ich die Parameter <strong>nur</strong> benutze um Datenelemente zu initialisieren?</p>
<pre><code>struct Foo {
    std::string value;
    Foo(const std::string&amp; s) : value(s) {}
};
</code></pre>
<p>oder</p>
<pre><code>struct Foo {
    std::string value;
    Foo(std::string s) : value(s) {}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/315926/konstruktor-parameter-als-referenz</link><generator>RSS for Node</generator><lastBuildDate>Thu, 30 Jul 2026 10:54:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/315926.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 16 Apr 2013 10:14:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konstruktor: Parameter als Referenz on Tue, 16 Apr 2013 10:14:44 GMT]]></title><description><![CDATA[<p>Macht es einen Unterschied ob ich dem Konstruktor Parameter als Referenz übergebe oder by-value, wenn ich die Parameter <strong>nur</strong> benutze um Datenelemente zu initialisieren?</p>
<pre><code>struct Foo {
    std::string value;
    Foo(const std::string&amp; s) : value(s) {}
};
</code></pre>
<p>oder</p>
<pre><code>struct Foo {
    std::string value;
    Foo(std::string s) : value(s) {}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2315827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2315827</guid><dc:creator><![CDATA[Ulrike_1992]]></dc:creator><pubDate>Tue, 16 Apr 2013 10:14:44 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktor: Parameter als Referenz on Tue, 16 Apr 2013 10:25:24 GMT]]></title><description><![CDATA[<p>Ja. Bei by-value wird eine zusätzliche Kopie angelegt, mit der der Konstruktor aufgerufen wird.</p>
<p>Könnte sein, dass einige Compiler das wegoptimieren, aber rein &quot;sprachtechnisch&quot; solltest du bei sowas immer const Ref nehmen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2315831</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2315831</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Tue, 16 Apr 2013 10:25:24 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktor: Parameter als Referenz on Tue, 16 Apr 2013 10:33:09 GMT]]></title><description><![CDATA[<p>Alles klar <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2315832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2315832</guid><dc:creator><![CDATA[Ulrike_1992]]></dc:creator><pubDate>Tue, 16 Apr 2013 10:33:09 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktor: Parameter als Referenz on Tue, 16 Apr 2013 12:04:22 GMT]]></title><description><![CDATA[<p>Mit C++11 kann es ratsam sein, bei Besitzübertragung Parameter als Werte zu übergeben. Durch Move-Semantik kannst du so Kopien vermeiden, die du mit Const-Referenzen hättest.</p>
<pre><code>struct Foo {
    std::string value;
    Foo(std::string s) : value(std::move(s)) {}
};
</code></pre>
<p>Siehe auch <a href="http://cpp-next.com/archive/2009/08/want-speed-pass-by-value/" rel="nofollow">Want Speed? Pass by Value.</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2315859</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2315859</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 16 Apr 2013 12:04:22 GMT</pubDate></item></channel></rss>