<?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[code einer klasse nach dem aufruf des constructors zuweisen]]></title><description><![CDATA[<p>hallo leute</p>
<p>ich hab da ein message system, aehnlich dem von windows fuer das gui.<br />
ich bleib da gleich mal bei der analogie.<br />
angenommen ich habe eine klasse button. wenn jemand auf den button klickt wird die funktion event aufgerufen. nun sind die buttons member eines fensters, des parents und sollen fuer jeden button eine bestimmte methode der parentklasse aufrufen:</p>
<pre><code>class parent
{
   public:
      button btn1;
      button btn2;

      void event_von_btn1(button*);
      void event_von_btn2(button*);
};
</code></pre>
<p>btn1 bekommt ein event und soll parent::event_von_btn1 aufrufen.<br />
jetzt suche ich eine moeglichkeit das ich aehnliches machen kann:</p>
<pre><code>/* constructor von parent */
parent::parent(void) : btn1(this), btn2(this)
{
   btn1.call([](){m_parent-&gt;event_von_btn1(this); }); /* 1 */
}
</code></pre>
<p>(1) m_parent ist member von btn1 und this ist btn1.</p>
<p>sonst muesste ich naemlich fuer jeden button eine ableitung machen nur um den aufrufcode reinzubringen. eventuell als template und class-methoden zeiger ginge es auch. gefaellt mir aber nicht wirklich.</p>
<p>hoffe es ist ersichtlich wo ich hin will.</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/330413/code-einer-klasse-nach-dem-aufruf-des-constructors-zuweisen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 10:38:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330413.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 08 Jan 2015 23:16:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to code einer klasse nach dem aufruf des constructors zuweisen on Thu, 08 Jan 2015 23:18:02 GMT]]></title><description><![CDATA[<p>hallo leute</p>
<p>ich hab da ein message system, aehnlich dem von windows fuer das gui.<br />
ich bleib da gleich mal bei der analogie.<br />
angenommen ich habe eine klasse button. wenn jemand auf den button klickt wird die funktion event aufgerufen. nun sind die buttons member eines fensters, des parents und sollen fuer jeden button eine bestimmte methode der parentklasse aufrufen:</p>
<pre><code>class parent
{
   public:
      button btn1;
      button btn2;

      void event_von_btn1(button*);
      void event_von_btn2(button*);
};
</code></pre>
<p>btn1 bekommt ein event und soll parent::event_von_btn1 aufrufen.<br />
jetzt suche ich eine moeglichkeit das ich aehnliches machen kann:</p>
<pre><code>/* constructor von parent */
parent::parent(void) : btn1(this), btn2(this)
{
   btn1.call([](){m_parent-&gt;event_von_btn1(this); }); /* 1 */
}
</code></pre>
<p>(1) m_parent ist member von btn1 und this ist btn1.</p>
<p>sonst muesste ich naemlich fuer jeden button eine ableitung machen nur um den aufrufcode reinzubringen. eventuell als template und class-methoden zeiger ginge es auch. gefaellt mir aber nicht wirklich.</p>
<p>hoffe es ist ersichtlich wo ich hin will.</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436637</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Thu, 08 Jan 2015 23:18:02 GMT</pubDate></item><item><title><![CDATA[Reply to code einer klasse nach dem aufruf des constructors zuweisen on Thu, 08 Jan 2015 23:38:50 GMT]]></title><description><![CDATA[<p>Suchst du vielleicht das Observer-Pattern?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436638</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436638</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 08 Jan 2015 23:38:50 GMT</pubDate></item><item><title><![CDATA[Reply to code einer klasse nach dem aufruf des constructors zuweisen on Fri, 09 Jan 2015 08:15:42 GMT]]></title><description><![CDATA[<p>Das geht mit <code>std::function</code> ganz einfach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436655</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436655</guid><dc:creator><![CDATA[TyRoXx]]></dc:creator><pubDate>Fri, 09 Jan 2015 08:15:42 GMT</pubDate></item></channel></rss>