<?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[Method Pointer]]></title><description><![CDATA[<p>Salut!</p>
<p>Ich habe eine Basisklasse(CCommandHandler) und eine Erbklasse(CTeachMenu).<br />
Bei der Basisklasse habe ich eine private Methode die als Parameter einen Pointer einer Methode will.</p>
<pre><code class="language-cpp">typedef EHRESULT ( CCommandHandler::* tMethodToExecutePtr ) ( );

void OpenFiniteProgressBar(CCommandController::tMethodToExecutePtr);
</code></pre>
<p>Beim Aufruf dieser Methode wird eigentlich immer dieselbe Methode angegeben.<br />
ABER:: Bei der Erbklasse wird diese Methode überschrieben. Und Somit muss auch die überschriebene Methode angegeben werden können.</p>
<p>Das verträgt sich natürlich nicht mit der typedef...<br />
Kann man diese typedef irgendwie Klassenneutral definieren??? oder gibt es sonst eine gute Lösung??</p>
<p>mfg simu</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/145011/method-pointer</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 20:29:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/145011.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Apr 2006 08:33:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Method Pointer on Mon, 24 Apr 2006 08:33:03 GMT]]></title><description><![CDATA[<p>Salut!</p>
<p>Ich habe eine Basisklasse(CCommandHandler) und eine Erbklasse(CTeachMenu).<br />
Bei der Basisklasse habe ich eine private Methode die als Parameter einen Pointer einer Methode will.</p>
<pre><code class="language-cpp">typedef EHRESULT ( CCommandHandler::* tMethodToExecutePtr ) ( );

void OpenFiniteProgressBar(CCommandController::tMethodToExecutePtr);
</code></pre>
<p>Beim Aufruf dieser Methode wird eigentlich immer dieselbe Methode angegeben.<br />
ABER:: Bei der Erbklasse wird diese Methode überschrieben. Und Somit muss auch die überschriebene Methode angegeben werden können.</p>
<p>Das verträgt sich natürlich nicht mit der typedef...<br />
Kann man diese typedef irgendwie Klassenneutral definieren??? oder gibt es sonst eine gute Lösung??</p>
<p>mfg simu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1043770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1043770</guid><dc:creator><![CDATA[simu87]]></dc:creator><pubDate>Mon, 24 Apr 2006 08:33:03 GMT</pubDate></item><item><title><![CDATA[Reply to Method Pointer on Mon, 24 Apr 2006 08:40:43 GMT]]></title><description><![CDATA[<p>Wenn du immer die selbe Methode aufrufen willst, brauchst du dafür doch keinen Pointer. Das ist eher ein Fall für virtuelle Methoden:</p>
<pre><code class="language-cpp">class base
{
public:
  virtual void do_something()
  { cout&lt;&lt;&quot;Base class\n&quot;; }
};

class derived : public base
{
public:
  virtual void do_something()
  {  cout&lt;&lt;&quot;Derived class 1\n&quot;; }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1043774</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1043774</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 24 Apr 2006 08:40:43 GMT</pubDate></item></channel></rss>