<?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[Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen]]></title><description><![CDATA[<p>Hallo!</p>
<p>Folgende Klassenfragmente seien gegeben:</p>
<pre><code class="language-cpp">class Item
{};

class A
{
private:
    int m_n;
    Item m_Item;
public:
    void Start();
};

class B
{
private:
    const int m_n;
public:
    B(const int &amp; n);
    void EditItem();
};
</code></pre>
<p>Nun ist in A::Start folgender Code:</p>
<pre><code class="language-cpp">// Version 1
void A::Start()
{
    B(this-&gt;m_n).EditItem(this-&gt;m_Item);
}
</code></pre>
<pre><code class="language-cpp">// Version 2
void A::Start()
{
    B b(this-&gt;m_n);
    b.EditItem(this-&gt;m_Item);
}
</code></pre>
<p>Ist hier semantisch ein Unterschied zwischen Version 1 und 2 bis auf dass die Iinstanz &quot;b&quot; bis zum Ende der Methode A::Start existiert? Tun also beide exakt das Gleiche?</p>
<p>lg<br />
Hannes</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/287739/klasseninstanz-quot-direkt-quot-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 06:58:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/287739.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 03 Jun 2011 06:34:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Fri, 03 Jun 2011 06:34:53 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Folgende Klassenfragmente seien gegeben:</p>
<pre><code class="language-cpp">class Item
{};

class A
{
private:
    int m_n;
    Item m_Item;
public:
    void Start();
};

class B
{
private:
    const int m_n;
public:
    B(const int &amp; n);
    void EditItem();
};
</code></pre>
<p>Nun ist in A::Start folgender Code:</p>
<pre><code class="language-cpp">// Version 1
void A::Start()
{
    B(this-&gt;m_n).EditItem(this-&gt;m_Item);
}
</code></pre>
<pre><code class="language-cpp">// Version 2
void A::Start()
{
    B b(this-&gt;m_n);
    b.EditItem(this-&gt;m_Item);
}
</code></pre>
<p>Ist hier semantisch ein Unterschied zwischen Version 1 und 2 bis auf dass die Iinstanz &quot;b&quot; bis zum Ende der Methode A::Start existiert? Tun also beide exakt das Gleiche?</p>
<p>lg<br />
Hannes</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072637</guid><dc:creator><![CDATA[Hannes1]]></dc:creator><pubDate>Fri, 03 Jun 2011 06:34:53 GMT</pubDate></item><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Fri, 03 Jun 2011 06:55:17 GMT]]></title><description><![CDATA[<p>Hannes1 schrieb:</p>
<blockquote>
<p>Ist hier semantisch ein Unterschied</p>
</blockquote>
<p>Eben, vielleicht handhabt der Compiler die Speicherverwaltung der beiden Varianten etwas anders aber sonst eigentlich nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072643</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Fri, 03 Jun 2011 06:55:17 GMT</pubDate></item><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Fri, 03 Jun 2011 07:04:09 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>Eben, vielleicht handhabt der Compiler die Speicherverwaltung der beiden Varianten etwas anders aber sonst eigentlich nicht.</p>
</blockquote>
<p>Als die eigentliche Änderung von Item ist aber identisch. Ok.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072646</guid><dc:creator><![CDATA[Hannes1]]></dc:creator><pubDate>Fri, 03 Jun 2011 07:04:09 GMT</pubDate></item><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Fri, 03 Jun 2011 12:35:52 GMT]]></title><description><![CDATA[<p>Sollte es nicht</p>
<pre><code class="language-cpp">...
void EditItem(Item&amp;);
...
</code></pre>
<p>lauten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072775</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072775</guid><dc:creator><![CDATA[muggabatscher]]></dc:creator><pubDate>Fri, 03 Jun 2011 12:35:52 GMT</pubDate></item><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Fri, 03 Jun 2011 12:38:47 GMT]]></title><description><![CDATA[<p>muggabatscher schrieb:</p>
<blockquote>
<p>Sollte es nicht ... lauten?</p>
</blockquote>
<p>Doch, du hast recht. Aber darum geht es hier nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072777</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Fri, 03 Jun 2011 12:38:47 GMT</pubDate></item><item><title><![CDATA[Reply to Klasseninstanz &amp;quot;direkt&amp;quot; aufrufen on Sat, 04 Jun 2011 06:26:01 GMT]]></title><description><![CDATA[<p>muggabatscher schrieb:</p>
<blockquote>
<p>Sollte es nicht ... lauten?</p>
</blockquote>
<p>Natürlich, da habe ich mich wohl versehen. <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/2073113</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2073113</guid><dc:creator><![CDATA[Hannes1]]></dc:creator><pubDate>Sat, 04 Jun 2011 06:26:01 GMT</pubDate></item></channel></rss>