<?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[Problem mit Pointern]]></title><description><![CDATA[<p>Hi,</p>
<p>hab jetz schon seit recht langer Zeit ein dickes Problem mit einer meiner Klassen.</p>
<p>Wenn ich diese Klasse &quot;MD3Character&quot; normal erstelle und benutze, also so:<br />
MD3Character cha;<br />
funktioniert alles einwandfrei. Wenn ich es allerdings so versuche:<br />
MD3Character* cha;<br />
cha = new MD3Character();<br />
oder so:<br />
MD3Character* cha;<br />
cha = new MD3Character[10];<br />
funktioniert es im Debug Modus auch einwandfrei. Beim Release Modus kratzt es allerdings bei folgender Zeile mit einer Access Violation ab:<br />
v1.pos.x = m-&gt;Vertices[curr_offset_vertex + vertidx].Vec[0] * 0.015625f;<br />
wahrscheinlich hat diese Zeile selbst wenig mit dem Problem zu tun, aber egal.</p>
<p>Wenn ich euch den genaueren Ablauf des Programms erklären soll oder irgendwelche funktionen dieser Klasse posten soll, sagt es. Erstma hoffe ich, dass das n ganz simpler fehler ist, der nur mir nicht bekannt ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/137000/problem-mit-pointern</link><generator>RSS for Node</generator><lastBuildDate>Sat, 29 Aug 2026 18:52:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/137000.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 14 Feb 2006 17:37:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Pointern on Tue, 14 Feb 2006 17:37:02 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>hab jetz schon seit recht langer Zeit ein dickes Problem mit einer meiner Klassen.</p>
<p>Wenn ich diese Klasse &quot;MD3Character&quot; normal erstelle und benutze, also so:<br />
MD3Character cha;<br />
funktioniert alles einwandfrei. Wenn ich es allerdings so versuche:<br />
MD3Character* cha;<br />
cha = new MD3Character();<br />
oder so:<br />
MD3Character* cha;<br />
cha = new MD3Character[10];<br />
funktioniert es im Debug Modus auch einwandfrei. Beim Release Modus kratzt es allerdings bei folgender Zeile mit einer Access Violation ab:<br />
v1.pos.x = m-&gt;Vertices[curr_offset_vertex + vertidx].Vec[0] * 0.015625f;<br />
wahrscheinlich hat diese Zeile selbst wenig mit dem Problem zu tun, aber egal.</p>
<p>Wenn ich euch den genaueren Ablauf des Programms erklären soll oder irgendwelche funktionen dieser Klasse posten soll, sagt es. Erstma hoffe ich, dass das n ganz simpler fehler ist, der nur mir nicht bekannt ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/994164</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/994164</guid><dc:creator><![CDATA[*CruSAdeR*]]></dc:creator><pubDate>Tue, 14 Feb 2006 17:37:02 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Pointern on Tue, 14 Feb 2006 19:44:03 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>folgendes klappt auf jeden Fall:</p>
<pre><code class="language-cpp">MD3Character* cha = new MD3Character;  //Instanz vom Typ MD3Character dynamisch allokieren
delete cha;  //...freigeben

//oder so:
MD3Character* arr_cha = new MD3Character[10];  //10 Instanzen vom Typ MD3Character dynamisch allokieren
delete [] cha;  //...freigeben
</code></pre>
<p>Jetzt zu der eigentlich Interessanten Zeile:</p>
<pre><code class="language-cpp">v1.pos.x = m-&gt;Vertices[curr_offset_vertex + vertidx].Vec[0] * 0.015625f;
</code></pre>
<p>1. Was ist v1 (mitsamt pos.x)?<br />
2. Was ist m? Ok, es ist ein Zeiger, aber auf was?<br />
3. Wird durch folgenden Ausdruck 'curr_offset_vertex + vertidx' ein zu hoher Index berechnet, der zu der Access Violation führen könnte?<br />
4. Was gibt das: '.Vec[0] * 0.015625f;' ??</p>
<p>Ein allgemeiner Ratschlag: Es ist nicht schlimm, 'etwas unglücklich formuliete Berechnungen' mit Zwischenergebnissen übersichtlicher (und meistens auch korrekt) zu gestalten. Der Compiler macht diese Zwischenberechnungen sowieso, also ist es grad wurscht. Denk dran, das Programm wird nicht schneller, nur weil du Berechnungen so zusammenquetschst, um 10 Zeilen zu sparen. Aber auf jeden Fall wird der Code besser zu lesen sein, und die Fehlersuche erleichtern <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>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/994257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/994257</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Tue, 14 Feb 2006 19:44:03 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Pointern on Tue, 14 Feb 2006 20:19:59 GMT]]></title><description><![CDATA[<p>Ja das komische ist ja, dass diese Zeile und das gesamte Programm einwandfrei funktioniert, wenn ich cha nicht als pointer benutze.<br />
Deswegen kann es doch eigentlich garnicht an dieser Zeile liegen oder? Ich mein, hier sollte sich ja nichts ändern, nur weil die Klasse als Pointer benutzt wird (ka wie man das richtig sagt) <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/994296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/994296</guid><dc:creator><![CDATA[*CruSAdeR*]]></dc:creator><pubDate>Tue, 14 Feb 2006 20:19:59 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Pointern on Fri, 17 Feb 2006 20:27:57 GMT]]></title><description><![CDATA[<p>keiner ne lösung zu dem problem? Kann auf Wunsch auch gerne das Projekt jemandem schicken, wenn er sich das dann angucken kann. (Man bräuchte das DX Sdk)</p>
<p>Ok Problem gefunden:<br />
Ein paar Variablen waren nicht initialisiert <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/996870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/996870</guid><dc:creator><![CDATA[*CruSAdeR*]]></dc:creator><pubDate>Fri, 17 Feb 2006 20:27:57 GMT</pubDate></item></channel></rss>