<?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[Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können]]></title><description><![CDATA[<p>Hi!</p>
<p>Geht das?<br />
Ich möchte, dass eine bestimmte Klasse eine Methode hat, zB &quot;void SetOnReceiveCallback(...)&quot;, und dieser können Methoden von jedem Klassentyp als Funktionspointer übergeben und dann später aufgerufen werden.</p>
<p>Also eine Methode, welcher man jede beliebige Callback-Funktion (mit passenden Parametern/Rückgabewert) übergeben kann. Sei es eine globale Callback-Funktion oder eben eine Funktion einer klasse.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/273082/methode-einer-bestimmten-klasse-soll-funktionspointer-auf-methode-x-beliebiger-klasse-nehmen-können</link><generator>RSS for Node</generator><lastBuildDate>Fri, 28 Aug 2026 11:36:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/273082.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 30 Aug 2010 23:09:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können on Mon, 30 Aug 2010 23:09:05 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Geht das?<br />
Ich möchte, dass eine bestimmte Klasse eine Methode hat, zB &quot;void SetOnReceiveCallback(...)&quot;, und dieser können Methoden von jedem Klassentyp als Funktionspointer übergeben und dann später aufgerufen werden.</p>
<p>Also eine Methode, welcher man jede beliebige Callback-Funktion (mit passenden Parametern/Rückgabewert) übergeben kann. Sei es eine globale Callback-Funktion oder eben eine Funktion einer klasse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1946336</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1946336</guid><dc:creator><![CDATA[Johnny!]]></dc:creator><pubDate>Mon, 30 Aug 2010 23:09:05 GMT</pubDate></item><item><title><![CDATA[Reply to Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können on Tue, 31 Aug 2010 00:26:34 GMT]]></title><description><![CDATA[<p>das problem, worüber du dir noch gedanken machen musst, ist folgendes: wenn du eine normale memberfunktion einer klasse aufrufen willst, musst du sie immer für ein bestimmtes objekt aufrufen. d.h. du müsstest zusätzlich zu deiner callback-funktion eine referenz/zeiger auf das objekt, für das du sie aufrufen willst, übergeben. prinzipiell.<br />
das bedeutet, du musst dir gedanken über die lifetime der objekte machen, deren memberfunktionen du als callback aufrufen willst.</p>
<p>wenn du das so wirklich tun möchtest, kannst du z.b. boost.function verwenden, oder generell gesagt funktionsobjekte/funktoren, die du deiner setcallback-methode übergeben kannst - egal ob es globale funktionen oder methoden sind. boost bietet dir da eine lösung, der neue C++ standard macht es ähnlich (gleich). google einfach nach diesen stichwörtern <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1946339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1946339</guid><dc:creator><![CDATA[kunststudent]]></dc:creator><pubDate>Tue, 31 Aug 2010 00:26:34 GMT</pubDate></item><item><title><![CDATA[Reply to Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können on Tue, 31 Aug 2010 02:37:55 GMT]]></title><description><![CDATA[<p>Ja, nimm boost::function.<br />
Dadurch kann sich der User z.B. auch aussuchen, ob er das Objekt durch den Funktor am Leben halten will, oder nicht.</p>
<p>Dank der flexibilität von boost::function und boost::bind muss nichtmal die Signatur genau stimmen, man kann Parameter dazubinden, den Returnwert ignorieren oder implizit konvertieren etc.</p>
<p>Bzw. mit C++0x kann der User sogar ne Lambda-Expression übergeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1946345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1946345</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 31 Aug 2010 02:37:55 GMT</pubDate></item><item><title><![CDATA[Reply to Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können on Tue, 31 Aug 2010 13:38:42 GMT]]></title><description><![CDATA[<p>Krank <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Danke! Ich freu mich schon auf die nächsten Jahre mit C++!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1946575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1946575</guid><dc:creator><![CDATA[Johnny!]]></dc:creator><pubDate>Tue, 31 Aug 2010 13:38:42 GMT</pubDate></item><item><title><![CDATA[Reply to Methode einer bestimmten Klasse soll Funktionspointer auf Methode X-beliebiger klasse nehmen können on Tue, 31 Aug 2010 14:34:37 GMT]]></title><description><![CDATA[<p><code>function</code> und <code>bind</code> gehören meiner Meinung nach zu den mächtigsten Alltagswerkzeugen auf Bibliotheksebene. Ich benutze sie relativ oft in meinen Projekten, die Flexibilität ist wirklich enorm.</p>
<p>Übrigens gibt es sie auch im TR1 (Technical Report 1), falls deine Standardbibliothek diesen unterstützt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1946600</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1946600</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 31 Aug 2010 14:34:37 GMT</pubDate></item></channel></rss>