<?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[Über eine abstrakte Liste iterieren]]></title><description><![CDATA[<p>Hallo ,<br />
ich möchte über eine abstrakte Liste iterieren.</p>
<p>d.h. ich habe eine Klasse &lt; MServiceKonkret &gt; diese ist abgeleitet von der Basisklasse &lt; MService &gt;.</p>
<p>Die Objekte der Klasse &lt; MServiceKonkret&gt; werden in der Liste<br />
&lt; m_pobServiceKonkret &gt; gespeichert.</p>
<pre><code class="language-cpp">std::list&lt;MServiceKonkret*&gt;   m_pobServiceKonkret ;
</code></pre>
<p>Jetzt möchte ich in der Liste &lt;pobServiceKonkret &gt; nach eiinem bestimmten Eintrag suchen.<br />
Ich möchte das aber abstrakter suchen . Deswegen benutze ich folgende Methode:</p>
<pre><code class="language-cpp">//Aufuf
MSender* poSender = ( MServiceKonkret* )GibService
                             ( p_sKanalname , m_pobServiceKonkret );

//Methode

MService* MKlasse::GibService( CString p_sKanalname ,
                                      std::list&lt;MService*&gt; pobService )
{
  MService*  poService = NULL;
  std::list&lt;MService*&gt;::iterator   oIter;
  for( oIter = pobService.begin(); oIter != pobService.end(); ++oIter ) {
    if( 1 == (*oIter)-&gt;GibKanalname().Compare( &amp;p_sKanalname ) ) {
	poService = (*oIter);
	return poService;
    }
  }
  return NULL;
}
</code></pre>
<p>Und bekomme folgende Fehlermeldung:</p>
<p>m:\MKlasse.cpp(130): error C2664: 'MServicebusAdapter::GibService': Konvertierung des Parameters 2 von 'std::list&lt;_Ty&gt;' in 'std::list&lt;_Ty&gt;' nicht möglich<br />
with<br />
[<br />
_Ty=MServiceKonkret*<br />
]<br />
and<br />
[<br />
_Ty=MService *<br />
]</p>
<p>Kann mir jemand helfen ?</p>
<p>Gruß ,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/126041/über-eine-abstrakte-liste-iterieren</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 17:49:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/126041.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 11 Nov 2005 11:51:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Tue, 15 Nov 2005 12:33:33 GMT]]></title><description><![CDATA[<p>Hallo ,<br />
ich möchte über eine abstrakte Liste iterieren.</p>
<p>d.h. ich habe eine Klasse &lt; MServiceKonkret &gt; diese ist abgeleitet von der Basisklasse &lt; MService &gt;.</p>
<p>Die Objekte der Klasse &lt; MServiceKonkret&gt; werden in der Liste<br />
&lt; m_pobServiceKonkret &gt; gespeichert.</p>
<pre><code class="language-cpp">std::list&lt;MServiceKonkret*&gt;   m_pobServiceKonkret ;
</code></pre>
<p>Jetzt möchte ich in der Liste &lt;pobServiceKonkret &gt; nach eiinem bestimmten Eintrag suchen.<br />
Ich möchte das aber abstrakter suchen . Deswegen benutze ich folgende Methode:</p>
<pre><code class="language-cpp">//Aufuf
MSender* poSender = ( MServiceKonkret* )GibService
                             ( p_sKanalname , m_pobServiceKonkret );

//Methode

MService* MKlasse::GibService( CString p_sKanalname ,
                                      std::list&lt;MService*&gt; pobService )
{
  MService*  poService = NULL;
  std::list&lt;MService*&gt;::iterator   oIter;
  for( oIter = pobService.begin(); oIter != pobService.end(); ++oIter ) {
    if( 1 == (*oIter)-&gt;GibKanalname().Compare( &amp;p_sKanalname ) ) {
	poService = (*oIter);
	return poService;
    }
  }
  return NULL;
}
</code></pre>
<p>Und bekomme folgende Fehlermeldung:</p>
<p>m:\MKlasse.cpp(130): error C2664: 'MServicebusAdapter::GibService': Konvertierung des Parameters 2 von 'std::list&lt;_Ty&gt;' in 'std::list&lt;_Ty&gt;' nicht möglich<br />
with<br />
[<br />
_Ty=MServiceKonkret*<br />
]<br />
and<br />
[<br />
_Ty=MService *<br />
]</p>
<p>Kann mir jemand helfen ?</p>
<p>Gruß ,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/914937</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914937</guid><dc:creator><![CDATA[Elke]]></dc:creator><pubDate>Tue, 15 Nov 2005 12:33:33 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Fri, 11 Nov 2005 12:10:55 GMT]]></title><description><![CDATA[<p>Hast Du den Header von MServiceKonkret in der Datei in der Du den Aufruf machst inkludiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/914958</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914958</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Fri, 11 Nov 2005 12:10:55 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Fri, 11 Nov 2005 12:11:31 GMT]]></title><description><![CDATA[<p>Hast du den Header von MS..Konkret in der Datei in der Du den Aufruf machst inludiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/914961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914961</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Fri, 11 Nov 2005 12:11:31 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Fri, 11 Nov 2005 12:15:23 GMT]]></title><description><![CDATA[<p>Ja,<br />
das habe ich gemacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/914966</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914966</guid><dc:creator><![CDATA[Elke]]></dc:creator><pubDate>Fri, 11 Nov 2005 12:15:23 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Fri, 11 Nov 2005 12:22:07 GMT]]></title><description><![CDATA[<p>std::list&lt;MServiceKonkret*&gt; m_pobServiceKonkret muss<br />
std::list&lt;MService*&gt; m_pobServiceKonkret<br />
lauten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/914977</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914977</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Fri, 11 Nov 2005 12:22:07 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Mon, 14 Nov 2005 08:16:44 GMT]]></title><description><![CDATA[<p>Hallo templäd,</p>
<p>das war es. Danke dir.</p>
<p>Jetzt funktioniert es.</p>
<p>Gruß Elke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/917029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/917029</guid><dc:creator><![CDATA[Elke]]></dc:creator><pubDate>Mon, 14 Nov 2005 08:16:44 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Tue, 15 Nov 2005 12:05:54 GMT]]></title><description><![CDATA[<p>nein , in diesem Fall muss</p>
<p>std::list&lt;MServiceKonkret*&gt; m_pobServiceKonkret</p>
<p>sein. Sonst weiß ich ja nicht welche Elemente in der Liste sind.</p>
<p>Aber dann bekomme ich den Fehler:<br />
error C2664: Konvertierung des Parameters 2 von 'std::list&lt;_Ty&gt;' in 'std::list&lt;_Ty&gt;' nicht möglich<br />
with<br />
[<br />
_Ty=MServiceKonkret*<br />
]<br />
and<br />
[<br />
_Ty=MService *<br />
]</p>
<p>Was mache ich falsch ?</p>
<p>Gruß ,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/918401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/918401</guid><dc:creator><![CDATA[Elke]]></dc:creator><pubDate>Tue, 15 Nov 2005 12:05:54 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Tue, 15 Nov 2005 12:24:26 GMT]]></title><description><![CDATA[<p>Elke schrieb:</p>
<blockquote>
<p>nein , in diesem Fall muss</p>
<p>std::list&lt;MServiceKonkret*&gt; m_pobServiceKonkret</p>
<p>sein. Sonst weiß ich ja nicht welche Elemente in der Liste sind.</p>
</blockquote>
<p>Nein, muß es nicht - die Elemente wissen selber (dank vtable), von welcher Klasse sie sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/918425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/918425</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 15 Nov 2005 12:24:26 GMT</pubDate></item><item><title><![CDATA[Reply to Über eine abstrakte Liste iterieren on Tue, 15 Nov 2005 12:31:02 GMT]]></title><description><![CDATA[<p>Das habe ich gerade auch rausgefunden. Ich speichere doch in der Liste konkrete<br />
Objekte . Deswegen wissen sie , von welcher Klasse sie sind.</p>
<p>Stimmt.</p>
<p>War ein Fehler von mir.</p>
<p>danke.</p>
<p>Gruß ,<br />
Elke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/918442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/918442</guid><dc:creator><![CDATA[Elke]]></dc:creator><pubDate>Tue, 15 Nov 2005 12:31:02 GMT</pubDate></item></channel></rss>