<?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[Simples Referenz-Problem]]></title><description><![CDATA[<p>Hi,</p>
<p>habe eine Frage zu Referenzen. Ist folgender Code ok?</p>
<pre><code>int x = 3;
int&amp; a = x;
int&amp; b = x;
</code></pre>
<p>Also erlaubt C++, 2 Referenzen auf die selbe Variable zu setzen?</p>
<p>Bekomme nämlich Speicherzugriffsfehler, aber is nur ne Vermutung, dass es daran liegt.</p>
<p>MfG<br />
D.Cent</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/238024/simples-referenz-problem</link><generator>RSS for Node</generator><lastBuildDate>Wed, 23 Sep 2026 00:29:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/238024.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 05 Apr 2009 12:38:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Simples Referenz-Problem on Sun, 05 Apr 2009 12:38:43 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>habe eine Frage zu Referenzen. Ist folgender Code ok?</p>
<pre><code>int x = 3;
int&amp; a = x;
int&amp; b = x;
</code></pre>
<p>Also erlaubt C++, 2 Referenzen auf die selbe Variable zu setzen?</p>
<p>Bekomme nämlich Speicherzugriffsfehler, aber is nur ne Vermutung, dass es daran liegt.</p>
<p>MfG<br />
D.Cent</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1691223</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1691223</guid><dc:creator><![CDATA[D.Cent]]></dc:creator><pubDate>Sun, 05 Apr 2009 12:38:43 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sun, 05 Apr 2009 12:47:06 GMT]]></title><description><![CDATA[<blockquote>
<p>Ist folgender Code ok?</p>
</blockquote>
<p>Ja.</p>
<blockquote>
<p>Also erlaubt C++, 2 Referenzen auf die selbe Variable zu setzen?</p>
</blockquote>
<p>Ja.</p>
<p>Zeige doch mal etwas mehr code.</p>
<p>Simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1691228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1691228</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sun, 05 Apr 2009 12:47:06 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sun, 05 Apr 2009 12:49:36 GMT]]></title><description><![CDATA[<p>Jop. Das ist erlaubt. Wäre ja recht schwierig immer zu wissen, wie viele Referenzen auf eine Variable zeigen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Es liegt also nicht an dem da, wenn du einen Speicherzugriffsfehler bekommst. (Du musst einfach darauf achten, dass der referenzierte Speicherbereich gültig ist).<br />
Kann es sein, dass eine solche Referenz auf einen dynamisch angeforderten Speicherbereich zeigt? - Also in etwa so:</p>
<pre><code class="language-cpp">int* p = new int;
int&amp; rp = *p;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1691230</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1691230</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 05 Apr 2009 12:49:36 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sun, 05 Apr 2009 13:00:00 GMT]]></title><description><![CDATA[<p>OK, danke. Ne dann wars glaub ich,dass man auf ne Referenz nicht nochmal eine draufsetzen darf...</p>
<p>Der Fehler könnte auch von ganz anderen Dingen kommen. Ich habe die Referenz auf eine Element eines std::vector gesetzt. k.A. ob das dynamisch ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1691238</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1691238</guid><dc:creator><![CDATA[D.Cent]]></dc:creator><pubDate>Sun, 05 Apr 2009 13:00:00 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sun, 05 Apr 2009 13:23:06 GMT]]></title><description><![CDATA[<p>D.Cent schrieb:</p>
<blockquote>
<p>OK, danke. Ne dann wars glaub ich,dass man auf ne Referenz nicht nochmal eine draufsetzen darf...</p>
</blockquote>
<p>Bei dem Versuch würdest du die Referenz automatisch auf das referenzierte Objekt und nicht die Referenz setzen. Das ginge also schon.</p>
<p>D.Cent schrieb:</p>
<blockquote>
<p>Der Fehler könnte auch von ganz anderen Dingen kommen. Ich habe die Referenz auf eine Element eines std::vector gesetzt. k.A. ob das dynamisch ist.</p>
</blockquote>
<p>Ja, das solltest du nicht. Wenn du Operationen am Container durchführst, kann es sein, dass die Elemente intern verschoben oder zerstört werden, wodurch Referenzen ungültig werden. Wenn du willst, dass Zeiger, Referenzen und Iteratoren immer gültig bleiben (natürlich ausser wenn das Element gelöscht wird), nimm <code>std::list</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1691250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1691250</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 05 Apr 2009 13:23:06 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sat, 11 Apr 2009 17:59:24 GMT]]></title><description><![CDATA[<p>Bitte, findet jemand den Bug! Ich werd' wahnsinnig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":-/"
      alt="😕"
    /></p>
<p>Valgrind meckert, dass später im Programm eine Referenz falsch ist, die bei dem<br />
&quot;!!!&quot; gesetzt wird...</p>
<pre><code class="language-cpp">for(unsigned int count2=0; count2 &lt; face_count; ++count2) 
    { 

       SMeshBuffer* face_buffer = new SMeshBuffer; 

       ODFLFile-&gt;read(&amp;connects, 2); 
       short start_point, second_point, third_point; 

       ODFLFile-&gt;read(&amp;start_point, 2); 
       ODFLFile-&gt;read(&amp;second_point, 2); 

       face_buffer-&gt;Vertices.push_back(odfl_verts.at(start_point) ); 
       face_buffer-&gt;Vertices.push_back(odfl_verts.at(second_point) ); // !!! 

       for(short connect_count=1; connect_count &lt; connects-1; ++connect_count) 
       { 
          ODFLFile-&gt;read(&amp;third_point, 2); 

          face_buffer-&gt;Vertices.push_back( odfl_verts.at(third_point) ); 

          face_buffer-&gt;Indices.push_back(start_point); 
          face_buffer-&gt;Indices.push_back(second_point); 
          face_buffer-&gt;Indices.push_back(third_point); 

          second_point = third_point; 
          ++triangle_count; 
       } 

       odfl_faces.push_back(tmp_face); 

       mesh-&gt;addMeshBuffer(face_buffer); 
       face_buffer-&gt;drop(); 

    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1694544</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1694544</guid><dc:creator><![CDATA[D.Cent]]></dc:creator><pubDate>Sat, 11 Apr 2009 17:59:24 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sat, 11 Apr 2009 18:04:22 GMT]]></title><description><![CDATA[<p>D.Cent schrieb:</p>
<blockquote>
<p>Bitte, findet jemand den Bug! Ich werd' wahnsinnig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":-/"
      alt="😕"
    /></p>
</blockquote>
<p>Wie wärs, wenn du den Debugger einsetzen würdest? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Ich habe dir zum Beispiel gesagt, dass du keine Referenzen auf <code>std::vector</code> -Elemente setzen solltest (es sei denn, es besteht eine Garantie, dass der Container nicht geändert wird). Daran liegts also nicht? Prüfe doch mal deine Variablen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1694558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1694558</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 11 Apr 2009 18:04:22 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sat, 11 Apr 2009 18:18:02 GMT]]></title><description><![CDATA[<p>Der std::vector wird nach seiner Erstellung nur noch gelesen, das ist es nicht. Der Debugger sagt nix.<br />
Noch weitere Ideen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1694564</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1694564</guid><dc:creator><![CDATA[D.Cent]]></dc:creator><pubDate>Sat, 11 Apr 2009 18:18:02 GMT</pubDate></item><item><title><![CDATA[Reply to Simples Referenz-Problem on Sat, 11 Apr 2009 18:23:14 GMT]]></title><description><![CDATA[<p>D.Cent schrieb:</p>
<blockquote>
<p>Der Debugger sagt nix.</p>
</blockquote>
<p>Wie ist das zu verstehen? Du hast ihn mit grosser Wahrscheinlichkeit nicht richtig angewandt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1694569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1694569</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 11 Apr 2009 18:23:14 GMT</pubDate></item></channel></rss>