<?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[Verständnisproblem Referenzen]]></title><description><![CDATA[<p>Hallo, hab ein Verständnisproblem mit Referenzen.<br />
Hier mal ein Beispiel:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class foo
{
private:
string foo_name;
public:
void set_name(string &amp;name)
{
   foo_name=name;
}
string &amp;get_name()
{
   return foo_name;
}
};

foo test[2];

int main(int argc, char* argv[])
{
   string a;
   a=&quot;Juergen&quot;;
   test[0].set_name(a);
   a=&quot;Heinz&quot;;
   test[1].set_name(a);
   cout &lt;&lt; test[0].get_name() &lt;&lt; endl &lt;&lt; test[1].get_name();
   getch();
   return 0;
}
</code></pre>
<p>Ich habe dort im main den &quot;string a&quot; der irgendwo im Speicher liegt.-)<br />
Dann übergebe ich mit der Methode &quot;set_name&quot; eine Referenz auf &quot;string a&quot; und weise somit &quot;foo_name&quot; vom Objekt &quot;foo[0]&quot; auf die Adresse im Speicher wo &quot;string a&quot; (main) liegt.<br />
Dann ändere ich &quot;string a&quot; und mache das selbe bei &quot;foo[1]&quot;.<br />
Ich übergebe doch beide male die Adresse von &quot;string a&quot;.Dann müssten doch in beiden Objekten in &quot;foo_name&quot; der Name &quot;Heinz&quot; stehen, oder ????<br />
Hoffe hab mich halbwegs verständlich ausgedrückt.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/151263/verständnisproblem-referenzen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 06 Sep 2026 07:02:08 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/151263.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 24 Jun 2006 13:44:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verständnisproblem Referenzen on Sat, 24 Jun 2006 13:44:52 GMT]]></title><description><![CDATA[<p>Hallo, hab ein Verständnisproblem mit Referenzen.<br />
Hier mal ein Beispiel:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class foo
{
private:
string foo_name;
public:
void set_name(string &amp;name)
{
   foo_name=name;
}
string &amp;get_name()
{
   return foo_name;
}
};

foo test[2];

int main(int argc, char* argv[])
{
   string a;
   a=&quot;Juergen&quot;;
   test[0].set_name(a);
   a=&quot;Heinz&quot;;
   test[1].set_name(a);
   cout &lt;&lt; test[0].get_name() &lt;&lt; endl &lt;&lt; test[1].get_name();
   getch();
   return 0;
}
</code></pre>
<p>Ich habe dort im main den &quot;string a&quot; der irgendwo im Speicher liegt.-)<br />
Dann übergebe ich mit der Methode &quot;set_name&quot; eine Referenz auf &quot;string a&quot; und weise somit &quot;foo_name&quot; vom Objekt &quot;foo[0]&quot; auf die Adresse im Speicher wo &quot;string a&quot; (main) liegt.<br />
Dann ändere ich &quot;string a&quot; und mache das selbe bei &quot;foo[1]&quot;.<br />
Ich übergebe doch beide male die Adresse von &quot;string a&quot;.Dann müssten doch in beiden Objekten in &quot;foo_name&quot; der Name &quot;Heinz&quot; stehen, oder ????<br />
Hoffe hab mich halbwegs verständlich ausgedrückt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1084555</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1084555</guid><dc:creator><![CDATA[referer]]></dc:creator><pubDate>Sat, 24 Jun 2006 13:44:52 GMT</pubDate></item><item><title><![CDATA[Reply to Verständnisproblem Referenzen on Sat, 24 Jun 2006 14:06:31 GMT]]></title><description><![CDATA[<p>das siehst du glaube ich nicht richtig, da du zwar eine Referenz übergibst, aber string den Zuweisungs-operator überschreibst sodass:</p>
<pre><code>string a,b;
a = &quot;hallo&quot;;
b = a;
</code></pre>
<p>b enthält jetzt den Inhalt von a, aber b ist immer noch ein eigenes Objekt mit einer eigenen Addresse im Speicher. Würde die String-Klasse den Zuweisungsoperator nicht überschreiben, würde es zu einen memory-leak kommen, also das objekt b würde nicht zerstört werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1084572</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1084572</guid><dc:creator><![CDATA[MaxDemian]]></dc:creator><pubDate>Sat, 24 Jun 2006 14:06:31 GMT</pubDate></item><item><title><![CDATA[Reply to Verständnisproblem Referenzen on Sun, 25 Jun 2006 06:59:13 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>du müßtest also auch innerhalb der Klasse mit Referenzen bzw. Pointern arbeiten, nicht nur als Übergabeparameter.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1084881</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1084881</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 25 Jun 2006 06:59:13 GMT</pubDate></item></channel></rss>