<?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[Referenz auf konstantes Object als lvalue vs operator=]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich habe hier gerade eine kleines Problem, bei dem ich zwar sofortige Abhilfe (*) hätte, es würde mich aber interessieren, ob mein erster Weg doch irgendwie zu bewerkstelligen wäre.<br />
Es geht um ein (DI)-Bitmap-Objekt, das natürlich aus verschiedenen Dateitypen geladen werden kann. Eben auch animierte gifs, die eben aus mehreren Bildern bestehen:</p>
<pre><code class="language-cpp">class A
{
...
	DIB m_image; // DIB Klasse für einzelnes Bitmap (aus jpg, png, bmp etc.)
	std::vector&lt;DIB&gt; m_Images; // für animierte Dateiformate
	const DIB&amp; m_displayDib; // Referenz auf das momentan anzuzeigende DIB
};
</code></pre>
<p>displayDib wird im Kontruktor natürlich auf m_image gesetzt. Wenn jetzt jedoch der vector m_Images die verschiedenen Bilder hält, gibt es ein Problem mit dem operator= von DIB:</p>
<pre><code class="language-cpp">int Tick()
{
  ...
  m_displayDib = m_images[m_currImage];
  ...
}
</code></pre>
<p>Meine Frage daher, ist es irgendwie möglich MSC 09 davon zu überzeugen, dass er nur die Referenz auf m_images[m_currImage] zuweist?</p>
<p>* Oder ist es nur möglich, wenn m_displayDib ein const DIB* ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/314609/referenz-auf-konstantes-object-als-lvalue-vs-operator</link><generator>RSS for Node</generator><lastBuildDate>Sat, 01 Aug 2026 05:58:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/314609.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 07 Mar 2013 19:47:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Thu, 07 Mar 2013 19:47:29 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich habe hier gerade eine kleines Problem, bei dem ich zwar sofortige Abhilfe (*) hätte, es würde mich aber interessieren, ob mein erster Weg doch irgendwie zu bewerkstelligen wäre.<br />
Es geht um ein (DI)-Bitmap-Objekt, das natürlich aus verschiedenen Dateitypen geladen werden kann. Eben auch animierte gifs, die eben aus mehreren Bildern bestehen:</p>
<pre><code class="language-cpp">class A
{
...
	DIB m_image; // DIB Klasse für einzelnes Bitmap (aus jpg, png, bmp etc.)
	std::vector&lt;DIB&gt; m_Images; // für animierte Dateiformate
	const DIB&amp; m_displayDib; // Referenz auf das momentan anzuzeigende DIB
};
</code></pre>
<p>displayDib wird im Kontruktor natürlich auf m_image gesetzt. Wenn jetzt jedoch der vector m_Images die verschiedenen Bilder hält, gibt es ein Problem mit dem operator= von DIB:</p>
<pre><code class="language-cpp">int Tick()
{
  ...
  m_displayDib = m_images[m_currImage];
  ...
}
</code></pre>
<p>Meine Frage daher, ist es irgendwie möglich MSC 09 davon zu überzeugen, dass er nur die Referenz auf m_images[m_currImage] zuweist?</p>
<p>* Oder ist es nur möglich, wenn m_displayDib ein const DIB* ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305141</guid><dc:creator><![CDATA[kurz nachgefragt]]></dc:creator><pubDate>Thu, 07 Mar 2013 19:47:29 GMT</pubDate></item><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Thu, 07 Mar 2013 19:57:50 GMT]]></title><description><![CDATA[<p>Wnn Du <code>m_displayDib</code> const machst muß <code>operator=()</code> naturgemäß scheitern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305145</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305145</guid><dc:creator><![CDATA[Caligulaminus]]></dc:creator><pubDate>Thu, 07 Mar 2013 19:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Thu, 07 Mar 2013 20:05:13 GMT]]></title><description><![CDATA[<p>Caligulaminus schrieb:</p>
<blockquote>
<p>Wnn Du <code>m_displayDib</code> const machst muß <code>operator=()</code> naturgemäß scheitern.</p>
</blockquote>
<p>Danke für die Antwort, aber ich will ja in diesem Fall nicht kopieren, sondern m_displayDib lediglich die Adresse des momentan anzuzeigenden Bildes zuweisen.</p>
<p>Es geht mir ja lediglich darum, ob dies generell möglich sei. Die Abhilfe wäre wie geschrieben der Zeiger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305148</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305148</guid><dc:creator><![CDATA[kurz nachgefragt]]></dc:creator><pubDate>Thu, 07 Mar 2013 20:05:13 GMT</pubDate></item><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Thu, 07 Mar 2013 20:10:05 GMT]]></title><description><![CDATA[<p>Eine Referenz ist fix. =&gt; Zeiger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305152</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305152</guid><dc:creator><![CDATA[Caligulaminus]]></dc:creator><pubDate>Thu, 07 Mar 2013 20:10:05 GMT</pubDate></item><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Thu, 07 Mar 2013 20:20:34 GMT]]></title><description><![CDATA[<p>Wenn Du alle Bilder im <code>vector</code> hast könntest Du statt eines Zeigers u.U. einfach den Index nehmen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305154</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305154</guid><dc:creator><![CDATA[Caligulaminus]]></dc:creator><pubDate>Thu, 07 Mar 2013 20:20:34 GMT</pubDate></item><item><title><![CDATA[Reply to Referenz auf konstantes Object als lvalue vs operator= on Sun, 10 Mar 2013 10:34:23 GMT]]></title><description><![CDATA[<p>Caligulaminus schrieb:</p>
<blockquote>
<p>Wenn Du alle Bilder im <code>vector</code> hast könntest Du statt eines Zeigers u.U. einfach den Index nehmen...</p>
</blockquote>
<p>Das ist gar keine schlechte Idee, zumal beim Wachsen des Vektors die Elemente an eine neue Adresse umziehen, ihr Index aber gleich bleibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305530</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305530</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sun, 10 Mar 2013 10:34:23 GMT</pubDate></item></channel></rss>