<?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[Arrayrückgabe in Methoden &#x2F; Seltsamer Fehler]]></title><description><![CDATA[<p>Howdy @ all...</p>
<p>Ich versteh die Welt nicht mehr. Folgende paar Zeilen Vorwort.<br />
Ich habe ein Projekt in Windows geschrieben, compiliert und es funktioniert. Nun kam die Anforderung, dieses Projekt in Linux zu portieren. Die externen Bibliotheken sind jeweils Linux/Win kompatibel, von daher eigentlich kein Problem.<br />
Nachdem ich das ganze auch fehlerfrei in Linux gebaut habe und dann starten wollte, wurde mir ein Speicherzugriffsfehler um die Ohren gehauen.</p>
<p>Nur gibt mir etwas zu Denken... eher Grundlagenkram, den ich aber bisher nie so wirklich verinnerlicht habe.</p>
<p>Folgende Zeilen Beispielcode (will net das ganze posten):</p>
<p>dummy.h</p>
<pre><code>class a
{
public:
     ...
     float* minimumVector();  //getter für ein Array 
     ...
private:
     ...
     float minVector[3];
}
</code></pre>
<p>dummy.cpp</p>
<pre><code>...
     float* Dummy::minimumVector() {

     return minVector;  // Dieser wird vorher in der Programmlogik gefüllt.
     }
...
</code></pre>
<p>Nach einigen Stunden Fehlersuche bin ich auf folgenden problembehafteten Code gestossen:</p>
<pre><code>...
     float tmp = dummy-&gt;minimumVector()[0]; 
...
</code></pre>
<p>Genau an der Stelle tritt der Fehler auf, und ich weiss wirklich nicht warum.</p>
<p>Was noch verblüffender ist, ist die Tatsache das wenn ich das Array public deklariere, ich mit...</p>
<pre><code>...
     float tmp = dummy-&gt;minVector[0]; // direkter Zugriff auf das public deklarierte Element.
...
</code></pre>
<p>... ebenfalls einen Speicherzugriffsfehler bekomme. Irgendwie ist mir das wirklich zu hoch.</p>
<p>Need Help plz...<br />
..<br />
.<br />
Danke <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/topic/125144/arrayrückgabe-in-methoden-seltsamer-fehler</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 05:28:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/125144.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 03 Nov 2005 18:14:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Arrayrückgabe in Methoden &#x2F; Seltsamer Fehler on Thu, 03 Nov 2005 18:14:27 GMT]]></title><description><![CDATA[<p>Howdy @ all...</p>
<p>Ich versteh die Welt nicht mehr. Folgende paar Zeilen Vorwort.<br />
Ich habe ein Projekt in Windows geschrieben, compiliert und es funktioniert. Nun kam die Anforderung, dieses Projekt in Linux zu portieren. Die externen Bibliotheken sind jeweils Linux/Win kompatibel, von daher eigentlich kein Problem.<br />
Nachdem ich das ganze auch fehlerfrei in Linux gebaut habe und dann starten wollte, wurde mir ein Speicherzugriffsfehler um die Ohren gehauen.</p>
<p>Nur gibt mir etwas zu Denken... eher Grundlagenkram, den ich aber bisher nie so wirklich verinnerlicht habe.</p>
<p>Folgende Zeilen Beispielcode (will net das ganze posten):</p>
<p>dummy.h</p>
<pre><code>class a
{
public:
     ...
     float* minimumVector();  //getter für ein Array 
     ...
private:
     ...
     float minVector[3];
}
</code></pre>
<p>dummy.cpp</p>
<pre><code>...
     float* Dummy::minimumVector() {

     return minVector;  // Dieser wird vorher in der Programmlogik gefüllt.
     }
...
</code></pre>
<p>Nach einigen Stunden Fehlersuche bin ich auf folgenden problembehafteten Code gestossen:</p>
<pre><code>...
     float tmp = dummy-&gt;minimumVector()[0]; 
...
</code></pre>
<p>Genau an der Stelle tritt der Fehler auf, und ich weiss wirklich nicht warum.</p>
<p>Was noch verblüffender ist, ist die Tatsache das wenn ich das Array public deklariere, ich mit...</p>
<pre><code>...
     float tmp = dummy-&gt;minVector[0]; // direkter Zugriff auf das public deklarierte Element.
...
</code></pre>
<p>... ebenfalls einen Speicherzugriffsfehler bekomme. Irgendwie ist mir das wirklich zu hoch.</p>
<p>Need Help plz...<br />
..<br />
.<br />
Danke <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/907595</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/907595</guid><dc:creator><![CDATA[Mr. Ratlos]]></dc:creator><pubDate>Thu, 03 Nov 2005 18:14:27 GMT</pubDate></item><item><title><![CDATA[Reply to Arrayrückgabe in Methoden &#x2F; Seltsamer Fehler on Thu, 03 Nov 2005 18:51:44 GMT]]></title><description><![CDATA[<p>Hallo,<br />
Worauf zeigt das Objekt dummy?</p>
<p>Ansonsten versuche doch den Fehler in einem Minimalbeispiel zu reproduzieren; deine geposteten Code-Snippet sehen jedenfalls korrekt aus...</p>
<p>Gruß Caipi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/907629</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/907629</guid><dc:creator><![CDATA[Caipi]]></dc:creator><pubDate>Thu, 03 Nov 2005 18:51:44 GMT</pubDate></item><item><title><![CDATA[Reply to Arrayrückgabe in Methoden &#x2F; Seltsamer Fehler on Fri, 04 Nov 2005 07:53:51 GMT]]></title><description><![CDATA[<ol>
<li>
<p>Die Klasse heißt &quot;a&quot;, also müsstest du die Methode auch mit &quot;float* a::minimumVector()&quot; definieren.</p>
</li>
<li>
<p>&quot;Dummy&quot; ist ein Pointer auf a (&quot;a* dummy;&quot;), richtig? In dem Fall solltest du ihm einen sinnvollen Wert zuweisen - entweder mit &quot;dummy=new a;&quot; oder &quot;dummy=&amp;my_a;&quot;</p>
</li>
<li>
<p>So wie deine Klasse aussieht, hast du den Sinn von private nicht ganz verstanden <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>
</li>
</ol>
]]></description><link>https://www.c-plusplus.net/forum/post/907808</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/907808</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 04 Nov 2005 07:53:51 GMT</pubDate></item><item><title><![CDATA[Reply to Arrayrückgabe in Methoden &#x2F; Seltsamer Fehler on Fri, 04 Nov 2005 08:44:32 GMT]]></title><description><![CDATA[<p>Find das generell etwas unschön...<br />
Warum gibst du bei deiner Getroutine nicht gleich den Index als Parameter zurück und lieferst nur die Referenz auf das jeweilige Element zurück?<br />
So kannst du an EINER Stelle falls notwendig überprüfen ob der Index gültig ist. Ansonsten musst du das an vielen Stellen sicherstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/907855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/907855</guid><dc:creator><![CDATA[Mathias]]></dc:creator><pubDate>Fri, 04 Nov 2005 08:44:32 GMT</pubDate></item></channel></rss>