<?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[error C2662: this-Zeiger kann nicht konvertiert werden]]></title><description><![CDATA[<p>Hi <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>
<p>Ich habe 2 Klassen gegeben: Vector3 und Ray.<br />
Eine Methode von Vector3 lautet:</p>
<pre><code class="language-cpp">const Vector3 Vector3::normalized()
{
	Vector3 v(*this);
	v.normalize();
	return v;
}
</code></pre>
<p>Das Objekt wird dabei mithilfe eines Kopierkonstruktors kopiert, die Kopie normalisiert und zurückgegeben. (Vector3::normalize() ist nicht const)</p>
<p>Der Konstruktor der Klasse Ray sieht folgendermaßen aus:</p>
<pre><code class="language-cpp">Ray::Ray(const Vector3 &amp;origin, const Vector3 &amp;direction) :
    m_origin(origin), m_direction(direction.normalized())
{
}
</code></pre>
<p>An der Stelle m_direction(direction.normalized()) erhalte ich nun den Fehler</p>
<pre><code>error C2662: 'Vector3::normalized': this-Zeiger kann nicht von 'const Vector3' in 'Vector3 &amp;' konvertiert werden
</code></pre>
<p>m_direction ist vom Typ Vector3. Lässt man das const bei der parameterdeklaration von direction weg, funktioniert alles. Dies ist jedoch unerwünscht.<br />
Das Problem sollte doch auch anders zu lösen sein. Leider bin ich bisher nicht darauf gekommen.<br />
Ich wäre echt dankbar, wenn mir jemand bei dem Problem helfen kann. <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>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/265843/error-c2662-this-zeiger-kann-nicht-konvertiert-werden</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 19:27:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/265843.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 29 Apr 2010 17:01:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to error C2662: this-Zeiger kann nicht konvertiert werden on Thu, 29 Apr 2010 17:01:09 GMT]]></title><description><![CDATA[<p>Hi <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>
<p>Ich habe 2 Klassen gegeben: Vector3 und Ray.<br />
Eine Methode von Vector3 lautet:</p>
<pre><code class="language-cpp">const Vector3 Vector3::normalized()
{
	Vector3 v(*this);
	v.normalize();
	return v;
}
</code></pre>
<p>Das Objekt wird dabei mithilfe eines Kopierkonstruktors kopiert, die Kopie normalisiert und zurückgegeben. (Vector3::normalize() ist nicht const)</p>
<p>Der Konstruktor der Klasse Ray sieht folgendermaßen aus:</p>
<pre><code class="language-cpp">Ray::Ray(const Vector3 &amp;origin, const Vector3 &amp;direction) :
    m_origin(origin), m_direction(direction.normalized())
{
}
</code></pre>
<p>An der Stelle m_direction(direction.normalized()) erhalte ich nun den Fehler</p>
<pre><code>error C2662: 'Vector3::normalized': this-Zeiger kann nicht von 'const Vector3' in 'Vector3 &amp;' konvertiert werden
</code></pre>
<p>m_direction ist vom Typ Vector3. Lässt man das const bei der parameterdeklaration von direction weg, funktioniert alles. Dies ist jedoch unerwünscht.<br />
Das Problem sollte doch auch anders zu lösen sein. Leider bin ich bisher nicht darauf gekommen.<br />
Ich wäre echt dankbar, wenn mir jemand bei dem Problem helfen kann. <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>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1890048</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1890048</guid><dc:creator><![CDATA[th3AddY]]></dc:creator><pubDate>Thu, 29 Apr 2010 17:01:09 GMT</pubDate></item><item><title><![CDATA[Reply to error C2662: this-Zeiger kann nicht konvertiert werden on Thu, 29 Apr 2010 17:05:57 GMT]]></title><description><![CDATA[<p>so sollte der fkt-rumpf aussehen: <code>Vector3 Vector3::normalized() const</code></p>
<p>dein const bezog sich auf den rückgabetypen (hier sinnlos), das const dahinter darauf, dass es nichts am eigentlichen objekt ändert</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1890052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1890052</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Thu, 29 Apr 2010 17:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to error C2662: this-Zeiger kann nicht konvertiert werden on Thu, 29 Apr 2010 17:09:15 GMT]]></title><description><![CDATA[<p>Ah, alles klar. Vielen Dank. <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/1890055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1890055</guid><dc:creator><![CDATA[th3AddY]]></dc:creator><pubDate>Thu, 29 Apr 2010 17:09:15 GMT</pubDate></item><item><title><![CDATA[Reply to error C2662: this-Zeiger kann nicht konvertiert werden on Thu, 29 Apr 2010 17:15:26 GMT]]></title><description><![CDATA[<p>Da die Antwort ja schon gesagt wurde wollte ich hier nur eben noch etwas anmerken.</p>
<p>Du kannst in der msdn-library auch ganz einfach in die Suche den betreffenden Fehler oder error eingeben. Meistens erhältst du auch dort eine zufriedenstellende Antwort!</p>
<p><a href="http://msdn.microsoft.com/de-de/library/6ke686zh(VS.100).aspx" rel="nofollow">error c2662</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1890060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1890060</guid><dc:creator><![CDATA[Walnut_Burl]]></dc:creator><pubDate>Thu, 29 Apr 2010 17:15:26 GMT</pubDate></item></channel></rss>