<?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[Probleme mit Methodenzeiger]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem bei der übergabe eines Zeigers auf eine Methode an eine Funktion. Beim compilieren folgenden Codes (VC6) bekomme ich einen 'INERNAL COMPILER ERROR':</p>
<pre><code class="language-cpp">[...]
void (CKlasse::*ZeigerAufMethode)(void) = &amp;CKlasse::Methode;
IrgendeineFunktion(Instanz-&gt;*ZeigerAufMethode);
[...]
</code></pre>
<p>'IrgendeineFunktion' erwartet einen Parameter vom Typ 'void (*)(void)'. Das ausführen mit folgender Zeile funktioniert allerdings:</p>
<pre><code class="language-cpp">(Instanz-&gt;*ZeigerAufMethode)();
</code></pre>
<p>wenn ich die Methode static mache, funktionierts natürlich, aber ich werde im Laufe mit virtuellen Methoden arbeiten müssen. Ein weiteres Problem ist, dass ich den Übergabetyp der Funktion nich ändern kann (DLL).</p>
<p>Auf die Option, eine Funktion zu übergeben die meine Methode aufruft, möchte ich gerne verzichten.</p>
<p>Weiss jemand eine bessere Idee?</p>
<p>Danke im Voraus!</p>
<p>[EDIT] Die Methode ist wie folgt deklariert 'void CKLasse::Methode(void)'</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/151110/probleme-mit-methodenzeiger</link><generator>RSS for Node</generator><lastBuildDate>Sun, 06 Sep 2026 02:38:53 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/151110.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 23 Jun 2006 08:28:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme mit Methodenzeiger on Fri, 23 Jun 2006 10:21:19 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem bei der übergabe eines Zeigers auf eine Methode an eine Funktion. Beim compilieren folgenden Codes (VC6) bekomme ich einen 'INERNAL COMPILER ERROR':</p>
<pre><code class="language-cpp">[...]
void (CKlasse::*ZeigerAufMethode)(void) = &amp;CKlasse::Methode;
IrgendeineFunktion(Instanz-&gt;*ZeigerAufMethode);
[...]
</code></pre>
<p>'IrgendeineFunktion' erwartet einen Parameter vom Typ 'void (*)(void)'. Das ausführen mit folgender Zeile funktioniert allerdings:</p>
<pre><code class="language-cpp">(Instanz-&gt;*ZeigerAufMethode)();
</code></pre>
<p>wenn ich die Methode static mache, funktionierts natürlich, aber ich werde im Laufe mit virtuellen Methoden arbeiten müssen. Ein weiteres Problem ist, dass ich den Übergabetyp der Funktion nich ändern kann (DLL).</p>
<p>Auf die Option, eine Funktion zu übergeben die meine Methode aufruft, möchte ich gerne verzichten.</p>
<p>Weiss jemand eine bessere Idee?</p>
<p>Danke im Voraus!</p>
<p>[EDIT] Die Methode ist wie folgt deklariert 'void CKLasse::Methode(void)'</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1083592</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1083592</guid><dc:creator><![CDATA[PuerNoctis]]></dc:creator><pubDate>Fri, 23 Jun 2006 10:21:19 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Methodenzeiger on Fri, 23 Jun 2006 10:47:49 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>mit &quot;Instanz-&gt;*ZeigerAufMethode&quot; übergibts du aber nicht den Zeiger auf eine Methode. Nur statische Methoden entsprechen der Funktionssignatur.</p>
<p>Dir bleibt also nichts anderes übrig als eine statische Methode zu verwenden, welche intern auf einen Instanzzeiger zugreift (dann funktioniert es auch mit virt. Methoden).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1083716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1083716</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Fri, 23 Jun 2006 10:47:49 GMT</pubDate></item></channel></rss>