<?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[Array zurück geben]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich möchte von einer Funktion ein Array erstellt haben.<br />
Mein Ansatz:</p>
<pre><code>int max = 255;
AbstractClass* result[max];

int result_cnt = search(result, max, &quot;Suchkriterium&quot;);

int search(AbstractClass* result, int max_results, string krit) {

    int result_cnt = 0;

    // Durchsuche einen Datensatz
    for( int i = 0; i &lt; max_ds; ++i ) {
        if( datensatz[i]-&gt;feld() == krit ) {
            result[result_cnt] = (AbstractClass*) datensatz[i];
        }
    }

    return result_cnt;
}
</code></pre>
<p>Aber wenn ich das mache kommt so ein Fehler:</p>
<blockquote>
<p>C2664: Konvertierung des Parameters 1 von 'AbstractClass *[255]' in 'AbstractClass *' nicht möglich</p>
</blockquote>
<p>Was mache ich falsch?</p>
<p>Grüße, pktm</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/210151/array-zurück-geben</link><generator>RSS for Node</generator><lastBuildDate>Tue, 13 Oct 2026 05:38:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/210151.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 07 Apr 2008 19:30:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Array zurück geben on Mon, 07 Apr 2008 19:30:19 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich möchte von einer Funktion ein Array erstellt haben.<br />
Mein Ansatz:</p>
<pre><code>int max = 255;
AbstractClass* result[max];

int result_cnt = search(result, max, &quot;Suchkriterium&quot;);

int search(AbstractClass* result, int max_results, string krit) {

    int result_cnt = 0;

    // Durchsuche einen Datensatz
    for( int i = 0; i &lt; max_ds; ++i ) {
        if( datensatz[i]-&gt;feld() == krit ) {
            result[result_cnt] = (AbstractClass*) datensatz[i];
        }
    }

    return result_cnt;
}
</code></pre>
<p>Aber wenn ich das mache kommt so ein Fehler:</p>
<blockquote>
<p>C2664: Konvertierung des Parameters 1 von 'AbstractClass *[255]' in 'AbstractClass *' nicht möglich</p>
</blockquote>
<p>Was mache ich falsch?</p>
<p>Grüße, pktm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488183</guid><dc:creator><![CDATA[pktm]]></dc:creator><pubDate>Mon, 07 Apr 2008 19:30:19 GMT</pubDate></item><item><title><![CDATA[Reply to Array zurück geben on Mon, 07 Apr 2008 19:31:24 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int max = 255; 
AbstractClass result[max]; //&lt; Wozu der Pointer?

int result_cnt = search(result, max, &quot;Suchkriterium&quot;); 

int search(AbstractClass* result, int max_results, string krit) { 

    int result_cnt = 0; 

    // Durchsuche einen Datensatz 
    for( int i = 0; i &lt; max_ds; ++i ) { 
        if( datensatz[i]-&gt;feld() == krit ) { 
            result[result_cnt] = (AbstractClass*) datensatz[i]; 
        } 
    } 

    return result_cnt; 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1488185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488185</guid><dc:creator><![CDATA[darthdespotism]]></dc:creator><pubDate>Mon, 07 Apr 2008 19:31:24 GMT</pubDate></item><item><title><![CDATA[Reply to Array zurück geben on Mon, 07 Apr 2008 19:33:15 GMT]]></title><description><![CDATA[<p>Weil der Datentyp eine abstrakte Klasse ist. Von der kann man keine Instanzen verwenden.<br />
Auf diese Weise kann ich mehrere verschiedene abgeleitete Klassen in einem Array speichern.</p>
<p>Grüße, pktm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488187</guid><dc:creator><![CDATA[pktm]]></dc:creator><pubDate>Mon, 07 Apr 2008 19:33:15 GMT</pubDate></item><item><title><![CDATA[Reply to Array zurück geben on Mon, 07 Apr 2008 19:39:32 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int max = 255; 
AbstractClass* result[max]; 

int result_cnt = search(result, max, &quot;Suchkriterium&quot;); 

int search(AbstractClass[max]* result, int max_results, string krit) { 

    int result_cnt = 0; 

    // Durchsuche einen Datensatz 
    for( int i = 0; i &lt; max_ds; ++i ) { 
        if( datensatz[i]-&gt;feld() == krit ) { 
            result[result_cnt] = (AbstractClass*) datensatz[i]; 
        } 
    } 

    return result_cnt; 
}
</code></pre>
<p>so dürfte es gehen. (Ich iggnoriere mal hier a) die Probleme wenn man arrays von polymorphn typen verwendet und die tatsache dass VLAs in C++ noch nicht existent sind)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488196</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488196</guid><dc:creator><![CDATA[darthdespotism]]></dc:creator><pubDate>Mon, 07 Apr 2008 19:39:32 GMT</pubDate></item><item><title><![CDATA[Reply to Array zurück geben on Mon, 07 Apr 2008 19:49:52 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ja, Array auch in die Schnittstelle aufnehmen ist gut <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>
<pre><code>// .h-Datei:
int find(AbstractClass* result[], int max_result_count, string kriterium);

// .cpp-Datei
int CFolder::find(CAccount* result[], int max_result_count, string owner, CDate dateOfBirth) {

    int result_cnt = 0;
    int max_ds = 255;

    // Durchsuche einen Datensatz 
    for( int i = 0; i &lt; max_ds; ++i ) { 
        if( result_cnt &gt;= max_result_count ) break;

        if( datensatz[i]-&gt;feld() == krit ) { 
            result[result_cnt] = (AbstractClass*) datensatz[i]; 
        } 
    }

    return result_cnt == 0;
}
</code></pre>
<p>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>
<p>Edit: so geht's nämlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488201</guid><dc:creator><![CDATA[pktm]]></dc:creator><pubDate>Mon, 07 Apr 2008 19:49:52 GMT</pubDate></item></channel></rss>