<?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[Funktions-Pointer]]></title><description><![CDATA[<p>Hi,</p>
<p>meine Basisklasse ist Core::Machine, meine abgeleitete Gui::Machine. Ich brauche in der abgeleiteten Klasse Funktions-Pointer. Die Deklaration innerhalb der Klasse funktioniert auch gut:</p>
<pre><code>void (Machine::*PF)(const TreeItem*, int);
</code></pre>
<p>Allerdings würde ich gern ein typedef (außerhalb der Klasse Gui::Machine) verwenden:</p>
<pre><code>typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
<p>Da beschwert sich verständlicherweise der Kompiler mit:</p>
<pre><code>error: `Gui::Machine' has not been declared
</code></pre>
<p>Wo muss ich den typedef hinpacken, damit er funktioniert?</p>
<p>Vielen Dank im Voraus</p>
<p>Toru</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/213308/funktions-pointer</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 10:21:11 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/213308.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 16 May 2008 10:37:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 10:41:44 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>meine Basisklasse ist Core::Machine, meine abgeleitete Gui::Machine. Ich brauche in der abgeleiteten Klasse Funktions-Pointer. Die Deklaration innerhalb der Klasse funktioniert auch gut:</p>
<pre><code>void (Machine::*PF)(const TreeItem*, int);
</code></pre>
<p>Allerdings würde ich gern ein typedef (außerhalb der Klasse Gui::Machine) verwenden:</p>
<pre><code>typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
<p>Da beschwert sich verständlicherweise der Kompiler mit:</p>
<pre><code>error: `Gui::Machine' has not been declared
</code></pre>
<p>Wo muss ich den typedef hinpacken, damit er funktioniert?</p>
<p>Vielen Dank im Voraus</p>
<p>Toru</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1510371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510371</guid><dc:creator><![CDATA[Toru]]></dc:creator><pubDate>Fri, 16 May 2008 10:41:44 GMT</pubDate></item><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 11:13:52 GMT]]></title><description><![CDATA[<p>So?</p>
<pre><code class="language-cpp">namespace Gui
{
  class Machine;
}

typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1510390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510390</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Fri, 16 May 2008 11:13:52 GMT</pubDate></item><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 11:21:27 GMT]]></title><description><![CDATA[<p>David_pb schrieb:</p>
<blockquote>
<p>So?</p>
<pre><code class="language-cpp">namespace Gui
{
  class Machine;
}

typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
</blockquote>
<p>Thx. Sieht zwar nicht so schön aus, funktioniert aber.</p>
<p>Viele Grüße</p>
<p>Toru</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1510397</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510397</guid><dc:creator><![CDATA[Toru]]></dc:creator><pubDate>Fri, 16 May 2008 11:21:27 GMT</pubDate></item><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 12:16:16 GMT]]></title><description><![CDATA[<p>Toru schrieb:</p>
<blockquote>
<p>David_pb schrieb:</p>
<blockquote>
<p>So?</p>
<pre><code class="language-cpp">namespace Gui
{
  class Machine;
}

typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
</blockquote>
<p>Thx. Sieht zwar nicht so schön aus, funktioniert aber.</p>
<p>Viele Grüße</p>
<p>Toru</p>
</blockquote>
<p>Das ist normale Vorgehensweise bei Funktions/Elementzeiger. Die unschöne Syntax überdeckst du ja mit dem typedef und es sieht sonst überall gut aus. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1510444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510444</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 16 May 2008 12:16:16 GMT</pubDate></item><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 12:25:37 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>Toru schrieb:</p>
<blockquote>
<p>David_pb schrieb:</p>
<blockquote>
<p>So?</p>
<pre><code class="language-cpp">namespace Gui
{
  class Machine;
}

typedef void (Gui::Machine::*PF)(const Gui::TreeItem*, int);
</code></pre>
</blockquote>
<p>Thx. Sieht zwar nicht so schön aus, funktioniert aber.</p>
<p>Viele Grüße</p>
<p>Toru</p>
</blockquote>
<p>Das ist normale Vorgehensweise bei Funktions/Elementzeiger. Die unschöne Syntax überdeckst du ja mit dem typedef und es sieht sonst überall gut aus. <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>
</blockquote>
<p>Ich meinte nicht das typedef als unschön, sondern das Bekanntmachen der Klasse Gui::Machine. Aber wie gesagt, das &quot;Aussehen&quot; spielt hier wirklich keine Rolle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1510451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510451</guid><dc:creator><![CDATA[Toru]]></dc:creator><pubDate>Fri, 16 May 2008 12:25:37 GMT</pubDate></item><item><title><![CDATA[Reply to Funktions-Pointer on Fri, 16 May 2008 12:33:59 GMT]]></title><description><![CDATA[<p>-.-'<br />
Ahh,nix für ungut, nicht das ganze gelesen. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1510462</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1510462</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 16 May 2008 12:33:59 GMT</pubDate></item></channel></rss>