<?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[Zeiger auf Funktion zurückliefern...]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe einen privaten Zeiger auf eine Form Funktion und möchte diesen in einer GetFunktion zurückliefern leider bekomm ich Deklaration der getFunktion nicht hin...</p>
<p>Zeiger auf die Funktion is deklariert mit:</p>
<pre><code>static void (__closure *_MessageFunction) (byte&amp;, int&amp;, AnsiString&amp;);
</code></pre>
<p>Wie muss nun die GetFunktion deklariert werden? So hab ichs, geht aber nicht:</p>
<pre><code>static (void* ( __closure *) (byte&amp;, int&amp;, AnsiString&amp;)) GetMessageFunction();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/99161/zeiger-auf-funktion-zurückliefern</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 14:24:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/99161.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 26 Jan 2005 07:58:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 07:58:15 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe einen privaten Zeiger auf eine Form Funktion und möchte diesen in einer GetFunktion zurückliefern leider bekomm ich Deklaration der getFunktion nicht hin...</p>
<p>Zeiger auf die Funktion is deklariert mit:</p>
<pre><code>static void (__closure *_MessageFunction) (byte&amp;, int&amp;, AnsiString&amp;);
</code></pre>
<p>Wie muss nun die GetFunktion deklariert werden? So hab ichs, geht aber nicht:</p>
<pre><code>static (void* ( __closure *) (byte&amp;, int&amp;, AnsiString&amp;)) GetMessageFunction();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/706235</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706235</guid><dc:creator><![CDATA[TheRebel]]></dc:creator><pubDate>Wed, 26 Jan 2005 07:58:15 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 08:14:11 GMT]]></title><description><![CDATA[<p>Ich nochmal, ich hab mal einfach nen falschen typ genommen (void <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="😉"
    /> und mir den compiler fehler angeschaut, seltsamer weise spricht der von nem ganz anderen typ des Zeigers als ich deklariert habe... wieso das?</p>
<p>[C++ Fehler] E2034 Konvertierung von 'void (* (_closure )(unsigned char &amp;,int &amp;,AnsiString &amp;))(unsigned char &amp;,int &amp;,AnsiString &amp;)' nach 'void *' nicht möglich</p>
]]></description><link>https://www.c-plusplus.net/forum/post/706251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706251</guid><dc:creator><![CDATA[TheRebel]]></dc:creator><pubDate>Wed, 26 Jan 2005 08:14:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 08:45:04 GMT]]></title><description><![CDATA[<p>TheRebel schrieb:</p>
<blockquote>
<p>Zeiger auf die Funktion is deklariert mit:</p>
<pre><code>static void (__closure *_MessageFunction) (byte&amp;, int&amp;, AnsiString&amp;);
</code></pre>
<p>Wie muss nun die GetFunktion deklariert werden? So hab ichs, geht aber nicht:</p>
<pre><code>static (void* ( __closure *) (byte&amp;, int&amp;, AnsiString&amp;)) GetMessageFunction();
</code></pre>
</blockquote>
<p>probier mal so:</p>
<pre><code class="language-cpp">void GetMessageFunction(byte&amp;, int&amp;, AnsiString&amp;);
</code></pre>
<p>das static bezieht sich auf den Zeiger, nicht auf die Funktion. Und das __closure steht AFAIK für eine gebundene Memberfunktion (in ISO-C++ kann man keine Zeiger auf an ein Objekt gebundene Memberfunktionen definieren).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/706269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706269</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 26 Jan 2005 08:45:04 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 09:36:09 GMT]]></title><description><![CDATA[<p>Nochmal hier, ich möchte nen Zeiger auf eine Funktion vom Typ<br />
void (__closure *const) (byte&amp;, int&amp;, AnsiString&amp;)<br />
mittels einer Funktion zurückgeben, dein Vorschlag enthält aber eine Parameterliste und ich brauch ne Deklaration einer Funktion vom Rückgabetyp des Funktionszeigers...</p>
<pre><code>//funzt: (entspricht setFunktion)
static void BindMessageRoutine( void (__closure *const MessageFunction) (byte&amp;, int&amp;, AnsiString&amp;) );

//funzt: (Aufruf)
static void CallMessageRoutine( byte kindOfMessage, int TimeToWait, AnsiString MessageText );

//geht so nicht:
   static *( void (__closure *const) (byte&amp;, int&amp;, AnsiString&amp;) ) 
GetMessageFunction();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/706301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706301</guid><dc:creator><![CDATA[TheRebel]]></dc:creator><pubDate>Wed, 26 Jan 2005 09:36:09 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 09:42:33 GMT]]></title><description><![CDATA[<p>Ach so, sorry, hab irgendwie die Frage falsch gelesen. Versuchs mal so:</p>
<pre><code class="language-cpp">void (__closure *GetMessageFunction())(byte&amp;, int&amp;, AnsiString&amp;);
</code></pre>
<p>Ich bin mir mit dem __closure nicht sicher, da ich das so nicht kenne (bin kein Borland-User). Im Zweifelsfalle halt ein Typedef bauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/706309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706309</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 26 Jan 2005 09:42:33 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf Funktion zurückliefern... on Wed, 26 Jan 2005 10:11:06 GMT]]></title><description><![CDATA[<p>uuuuhhuuuuuu!</p>
<p>funzt! danke!! kapier ich zwar nicht weshalb die syntax hier so ist...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/706349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/706349</guid><dc:creator><![CDATA[TheRebel]]></dc:creator><pubDate>Wed, 26 Jan 2005 10:11:06 GMT</pubDate></item></channel></rss>