<?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[GUI System Nachbilden]]></title><description><![CDATA[<p>Hey Leute.<br />
Ich habe eine frage zu dem gui systemen.</p>
<p>Ihr wist ja alle das man z.b bei wxWidgets und vllt. auch bei Qt alle Elemente mit einem new erzeugen muss, aber dazu kein delete schreiben muss?<br />
Ich habe gehört das sie irgentwas eingebaut haben ,aber ich weiß nicht mehr was.</p>
<p>1.) Was ist das für ein System?<br />
2.) Wie funktioniert das?<br />
3.) Wie ist der aufgebaut?<br />
4.) Wie kann man so etwas selber machen?<br />
5.) Gibt es irgentwelche tut's dafür?</p>
<p>Danke im Voraus!<br />
Mfg Wikinger75!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/242103/gui-system-nachbilden</link><generator>RSS for Node</generator><lastBuildDate>Mon, 21 Sep 2026 03:45:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/242103.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 30 May 2009 11:53:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 11:53:01 GMT]]></title><description><![CDATA[<p>Hey Leute.<br />
Ich habe eine frage zu dem gui systemen.</p>
<p>Ihr wist ja alle das man z.b bei wxWidgets und vllt. auch bei Qt alle Elemente mit einem new erzeugen muss, aber dazu kein delete schreiben muss?<br />
Ich habe gehört das sie irgentwas eingebaut haben ,aber ich weiß nicht mehr was.</p>
<p>1.) Was ist das für ein System?<br />
2.) Wie funktioniert das?<br />
3.) Wie ist der aufgebaut?<br />
4.) Wie kann man so etwas selber machen?<br />
5.) Gibt es irgentwelche tut's dafür?</p>
<p>Danke im Voraus!<br />
Mfg Wikinger75!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718248</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718248</guid><dc:creator><![CDATA[Wikinger75]]></dc:creator><pubDate>Sat, 30 May 2009 11:53:01 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 12:11:58 GMT]]></title><description><![CDATA[<p>Wie sie das machen, weiss ich nicht, aber grundsätzlich ist das ganz einfach.</p>
<pre><code class="language-cpp">class manager : public singleton
{
    public:
    register ( item* i ){...}
};

class item
{
   public:
   item () 
   {
    manager::inst ()-&gt;register ( this );
   }
};
</code></pre>
<p>Du registrierst einfach jedes Objekt in dem gewünschtem Manager. Der Manager regelt dann die Objekte und deren zerstörung. Dazu muss man sich aber noch ein paar Gedanken machen, was passieren soll, wenn ein Objekt kopiert wir (reference counting z.B) oder jemand das Objekt trotzdem mit delete zerstört.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718252</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sat, 30 May 2009 12:11:58 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 12:13:19 GMT]]></title><description><![CDATA[<p>Also ich weis nicht wie sies genau gemacht haben, du kannst aber zum Beispiel dafür sorgen das sich dein erzeugtes Element bei einer Verwaltungsklasse anmeldet die sich um die ganzen deletes kümmert wenn das Programm beendet wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718253</guid><dc:creator><![CDATA[Xebov]]></dc:creator><pubDate>Sat, 30 May 2009 12:13:19 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 12:51:14 GMT]]></title><description><![CDATA[<p>Das System ist eigentlich ganz einfach und betrifft nur die Fenster (also auch Controls). Da alle Fenster in einer Baumstruktur aufgebaut sind, hat jedes Fenster ein übergeordnetes Fenster. Das übergeordnete Fenster löscht einfach per <code>delete</code> alle untergeordneten Fenster.<br />
Es wird einfach in jedem übergeordnetem Fenster eine Liste mit Zeigern von untergeordneten Fenstern mitgeführt. Jedes neu erstelle Fenster muss sich daher entsprechend beim übergeordneten Fenster anmelden.</p>
<p>Die Fenster werden dann über die Methode <code>Destroy()</code> gelöscht. Laut wxWidgets braucht es diese <code>Destroy()</code> Methode, da es sonst zu Fehlern kommen kann:<br />
<a href="http://wiki.wxwidgets.org/Avoiding_Memory_Leaks#The_wxWidgets-specific_part" rel="nofollow">http://wiki.wxwidgets.org/Avoiding_Memory_Leaks#The_wxWidgets-specific_part</a></p>
<p>Tatsächlich hätte aber ein sauberes Design dies unnötig gemacht und man hätte auch bessere RAII Möglichkeiten mit wxWidgets. Aber die Bibliothek ist halt uralt und setzt auf veraltete Konzepte.</p>
<p>Ich rate dir aufzupassen, wenn du in solche Richtungen gehst. Lass dem User lieber die Möglichkeit, dass er selber entscheiden kann. Für sichere Heapspeicherverwaltung gibt es die Smartpointer:<br />
<a href="http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm" rel="nofollow">http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm</a></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718268</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718268</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sat, 30 May 2009 12:51:14 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 20:59:44 GMT]]></title><description><![CDATA[<blockquote>
<p>Wie sie das machen, weiss ich nicht, aber grundsätzlich ist das ganz einfach.</p>
<pre><code class="language-cpp">class manager : public singleton
{
    public:
    register ( item* i ){...}
};

class item
{
   public:
   item ()
   {
    manager::inst ()-&gt;register ( this );
   }
};
</code></pre>
<p>Du registrierst einfach jedes Objekt in dem gewünschtem Manager. Der Manager regelt dann die Objekte und deren zerstörung. Dazu muss man sich aber noch ein paar Gedanken machen, was passieren soll, wenn ein Objekt kopiert wir (reference counting z.B) oder jemand das Objekt trotzdem mit delete zerstört.</p>
</blockquote>
<p>Hmm ja das Prinzip scheint schonmal eindeutig zu sein, doch leider versteh ich das nicht gant.</p>
<p>1.) register ( item* i ){...} &lt;-- Raff ich nicht^^ z.b warum steht item* in klamern und warum ist da kein bezeichne dabei?</p>
<p>2.) manager::inst ()-&gt;register ( this );<br />
Seit wan hat manager eine inst methode?<br />
Warum steht hinter den klamern register? Is das net falsch?^^</p>
<p>3.) Wie sieht überhaupt die Klasse singleton aus?</p>
<blockquote>
<p>Also ich weis nicht wie sies genau gemacht haben, du kannst aber zum Beispiel dafür sorgen das sich dein erzeugtes Element bei einer Verwaltungsklasse anmeldet die sich um die ganzen deletes kümmert wenn das Programm beendet wird.</p>
</blockquote>
<p>Ah gut^^</p>
<blockquote>
<p>Das System ist eigentlich ganz einfach und betrifft nur die Fenster (also auch Controls). Da alle Fenster in einer Baumstruktur aufgebaut sind, hat jedes Fenster ein übergeordnetes Fenster. Das übergeordnete Fenster löscht einfach per delete alle untergeordneten Fenster.<br />
Es wird einfach in jedem übergeordnetem Fenster eine Liste mit Zeigern von untergeordneten Fenstern mitgeführt. Jedes neu erstelle Fenster muss sich daher entsprechend beim übergeordneten Fenster anmelden.</p>
<p>Die Fenster werden dann über die Methode Destroy() gelöscht. Laut wxWidgets braucht es diese Destroy() Methode, da es sonst zu Fehlern kommen kann:<br />
<a href="http://wiki.wxwidgets.org/Avoiding_Memory_Leaks#The_wxWidgets-specific_part" rel="nofollow">http://wiki.wxwidgets.org/Avoiding_Memory_Leaks#The_wxWidgets-specific_part</a></p>
<p>Tatsächlich hätte aber ein sauberes Design dies unnötig gemacht und man hätte auch bessere RAII Möglichkeiten mit wxWidgets. Aber die Bibliothek ist halt uralt und setzt auf veraltete Konzepte.</p>
<p>Ich rate dir aufzupassen, wenn du in solche Richtungen gehst. Lass dem User lieber die Möglichkeit, dass er selber entscheiden kann. Für sichere Heapspeicherverwaltung gibt es die Smartpointer:<br />
<a href="http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm" rel="nofollow">http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm</a></p>
<p>Grüssli</p>
</blockquote>
<p>Ok, dass erklärts nochmal ausführlich, danke^^</p>
<blockquote>
<p>Tatsächlich hätte aber ein sauberes Design dies unnötig gemacht und man hätte auch bessere RAII Möglichkeiten mit wxWidgets. Aber die Bibliothek ist halt uralt und setzt auf veraltete Konzepte.</p>
</blockquote>
<p>Ähm hier benötige ich erklärungen^^<br />
Z.b wieso veraltet? Warum sollte man das nicht benutzen?<br />
Ich finde das ganz logisch.</p>
<blockquote>
<p>Ich rate dir aufzupassen, wenn du in solche Richtungen gehst. Lass dem User lieber die Möglichkeit, dass er selber entscheiden kann. Für sichere Heapspeicherverwaltung gibt es die Smartpointer:<br />
<a href="http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm" rel="nofollow">http://www.boost.org/doc/libs/1_39_0/libs/smart_ptr/smart_ptr.htm</a></p>
</blockquote>
<p>Denn Tipp nehme ich gerne an^^<br />
Jedoch weiß ich nit was das bringen sollte^^</p>
<p>Naja aufjedenfall</p>
<p>1.) Danke für den Tipp^^<br />
2.) Man ich hab kein Bock auf tausend externe Bibliotheken zurück zugreifen.<br />
Da bastel ich mir das lieber selber sicher^^, möglich is das ja!</p>
<p>Mfg Wikinger75!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718433</guid><dc:creator><![CDATA[Wikinger75]]></dc:creator><pubDate>Sat, 30 May 2009 20:59:44 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 21:21:45 GMT]]></title><description><![CDATA[<p>Wikinger75 schrieb:</p>
<blockquote>
<p>Z.b wieso veraltet?</p>
</blockquote>
<p>wxWidgets ist uralt und wurde bis heute nicht sinnvoll renoviert. Es verwendet nicht mal die Möglichkeiten des C++ Standards von 1998. Es ist völlig in vergangenen Zeiten stecken geblieben und die Entwickler weigern sich mit allen Mitteln, einzusehen, dass sich die Welt und C++ weiterentwickelt haben.</p>
<p>Wikinger75 schrieb:</p>
<blockquote>
<p>Warum sollte man das nicht benutzen?<br />
Ich finde das ganz logisch.</p>
</blockquote>
<p>In C++ ist derjenige für den Speicher verantwortlich, der den Speicher anfordert.<br />
Es ist eine unnötige Einschränkung, dass ich alle Objekte einzeln auf den Heap packen muss. Ich möchte vielleicht Objekte direkt in einer Klasse als Member ablegen. Das verbietet dieses System explizit und es gibt keinen Grund für diese Einschränkung.</p>
<p>Klassen sollten in C++ so aufgebaut sein, dass es keine Rolle spielt, ob man nun ein Objekt auf dem Heap oder Stack ablegt. Es ist völlig unlogisch, dass es hier plötzlich eine Einschränkung gibt.</p>
<p>Wikinger75 schrieb:</p>
<blockquote>
<p>Denn Tipp nehme ich gerne an^^<br />
Jedoch weiß ich nit was das bringen sollte^^</p>
</blockquote>
<p>Bsp:</p>
<pre><code class="language-cpp">void foo_raw_ptr()
{
  MyClass* ptr = new MyClass();

  ptr-&gt;doSomething();

  delete ptr;
  // Falls bei doSomething eine Exception fliegt,
  // wird der Speicher nicht freigegeben.
}

void foo_smart_ptr()
{
  boost::scoped_ptr&lt;MyClass&gt; ptr(new MyClass());

  ptr-&gt;doSomething;

  // delete nicht mehr nötig. Der SmartPtr erledigt es für uns.
  // Falls bei doSomething eine Exception fliegt, wird der Speicher auch freigegeben.
}
</code></pre>
<p>Das ist ein Beispiel für einen <code>boost::scoped_ptr</code> . Ein <code>boost::shared_ptr</code> bietet zum Beispiel die Möglichkeit an, dass der letzte, welcher einen Zeiger auf das entsprechende Objekt hält, den Speicher auch freigibt und das alles voll automatisch.</p>
<p>Ein <code>scoped_ptr</code> oder <code>shared_ptr</code> kann man selber auch noch zusätzlich konfigurieren. Man kann ihnen auch Zeiger auf Stackobjekte geben, man muss dann nur die Anweisung geben, dass sie schlussendlich kein <code>delete</code> aufrufen sollen. So kann eine Funktion ein <code>boost::shared_ptr</code> erwarten und unter Umständen auch mit einem Zeiger auf ein Stackobjekt gefüttert werden. Auch ist es möglich einen Zeiger auf einen eigenen Speicherpool zu übergeben. Die Speicherverwaltung funktioniert auch hier, also ein <code>delete</code> ist überflüssig in jedem Fall und muss nicht mehr vom Programmierer aufgerufen werden.</p>
<p>Wikinger75 schrieb:</p>
<blockquote>
<p>2.) Man ich hab kein Bock auf tausend externe Bibliotheken zurück zugreifen.<br />
Da bastel ich mir das lieber selber sicher^^, möglich is das ja!</p>
</blockquote>
<p>Hä?<br />
(Sorry, aber da fällt mir wirklich nichts anderes mehr ein!)<br />
Du erfindest also lieber jedesmal das Rad neu, statt auf bewährte, getestete und sichere Systeme zurückzugreifen?<br />
Nichts dagegen, dass du es mal zum Lernen selber machen willst, aber für produktiven Code ist das nur absoluter Blödsinn.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718443</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sat, 30 May 2009 21:21:45 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 21:42:46 GMT]]></title><description><![CDATA[<blockquote>
<p>In C++ ist derjenige für den Speicher verantwortlich, der den Speicher anfordert.<br />
Es ist eine unnötige Einschränkung, dass ich alle Objekte einzeln auf den Heap packen muss. Ich möchte vielleicht Objekte direkt in einer Klasse als Member ablegen. Das verbietet dieses System explizit und es gibt keinen Grund für diese Einschränkung.</p>
<p>Klassen sollten in C++ so aufgebaut sein, dass es keine Rolle spielt, ob man nun ein Objekt auf dem Heap oder Stack ablegt. Es ist völlig unlogisch, dass es hier plötzlich eine Einschränkung gibt.</p>
</blockquote>
<p>Hmm gut, also brauch ich das mit dem manager auch nicht mehr zu machen^^<br />
Da seh ich auch ne logik drinne, aufjedenfall weiß ich jetzt auch warum der eine vorgang veraltet ist^^ Gut das mach ich mir mal zur Faustregel^^</p>
<blockquote>
<blockquote>
<p>2.) Man ich hab kein Bock auf tausend externe Bibliotheken zurück zugreifen.<br />
Da bastel ich mir das lieber selber sicher^^, möglich is das ja!</p>
</blockquote>
<p>Hä?<br />
(Sorry, aber da fällt mir wirklich nichts anderes mehr ein!)<br />
Du erfindest also lieber jedesmal das Rad neu, statt auf bewährte, getestete und sichere Systeme zurückzugreifen?<br />
Nichts dagegen, dass du es mal zum Lernen selber machen willst, aber für produktiven Code ist das nur absoluter Blödsinn.</p>
</blockquote>
<p>Hmm nein, ich erfinde nicht jedes Rad neu, sondern nur manche^^<br />
Und zwar erfinde ich ein Rad neu wenn ich nur eine Klasse brauche, aber sie nur bekomme wenn ich mir eine ganze gigantische lib runterladen muss <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>
<p>Mfg Wikinger75!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718453</guid><dc:creator><![CDATA[Wikinger75]]></dc:creator><pubDate>Sat, 30 May 2009 21:42:46 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 21:56:06 GMT]]></title><description><![CDATA[<p>Dravere schrieb:</p>
<blockquote>
<p>Du erfindest also lieber jedesmal das Rad neu, statt auf bewährte, getestete und sichere Systeme zurückzugreifen?</p>
</blockquote>
<p>Für GUI in C++ wäre es vielleicht grundsätzlich gar nicht das Schlechteste, das Rad neu zu erfinden... <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>
<p>Nur sollte man dafür genügend Zeit, Wissen und Motivation haben. Auch gut wären genügend Leute. <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/1718463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718463</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 30 May 2009 21:56:06 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sat, 30 May 2009 21:59:17 GMT]]></title><description><![CDATA[<p>Wikinger75 schrieb:</p>
<blockquote>
<p>Hmm nein, ich erfinde nicht jedes Rad neu, sondern nur manche^^<br />
Und zwar erfinde ich ein Rad neu wenn ich nur eine Klasse brauche, aber sie nur bekomme wenn ich mir eine ganze gigantische lib runterladen muss <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>Schau dir mal Boost an. Da kannst du noch extrem viel von verwenden. Ich verwende grundsätzlich in jedem Projekt in C++ Boost und zwar meistens mehrere Bibliotheken. Boost gilt zum Teil als inoffizielle Erweiterung zur Standardbibliothek von C++ und das nicht ohne Grund <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>
<p>Aber gut, Smart Pointer bekommst du auch im TR1: <code>std::tr1::shared_ptr</code> . Das Teil ist in <code>&lt;memory&gt;</code> zu finden. Natürlich nur sofern du einen TR1 kompatibeln Kompiler hast <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>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/12954">@Nexus</a>,<br />
Wo du recht hast, hast du recht <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="😃"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718465</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sat, 30 May 2009 21:59:17 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sun, 31 May 2009 08:53:16 GMT]]></title><description><![CDATA[<p>Auch wenn das schon vorbei ist:</p>
<blockquote>
<p>1.) register ( item* i ){...} &lt;-- Raff ich nicht^^ z.b warum steht item* in klamern und warum ist da kein bezeichne dabei?</p>
<p>2.) manager::inst ()-&gt;register ( this );<br />
Seit wan hat manager eine inst methode?<br />
Warum steht hinter den klamern register? Is das net falsch?^^</p>
<p>3.) Wie sieht überhaupt die Klasse singleton aus?</p>
</blockquote>
<p><strong>1.</strong> Stell dir da einfach noch ein <code>void</code> vornedran vor. <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="😉"
    /><br />
<strong>2/3.</strong> Das ist eine gängige Implementierung eines Singletons. Man kann dann von einer Klasse ableite und hat eine Funktion zur Verfügung, die inst, oder so ähnlich heisst, wo man auf das Objekt zugreifen kann.</p>
<p>GUI ist wirkliche Interessantes Thema, wo es viele Probleme zu lösen gibt. Die Ideale Lösung zu finden ist schwer, aber man kann sehr davon profitieren selbst mal etwas in dem Bereich gemacht zu haben. Ich bevorzuge auch etwas eigenes, obwohl es auch wirklich brauchbare Sachen gibt. <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/1718550</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718550</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 31 May 2009 08:53:16 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sun, 31 May 2009 11:57:01 GMT]]></title><description><![CDATA[<p>Übrigens ist <code>register</code> ein denkbar schlechter Name für eine Methode. <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/1718587</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718587</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 31 May 2009 11:57:01 GMT</pubDate></item><item><title><![CDATA[Reply to GUI System Nachbilden on Sun, 31 May 2009 12:08:17 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Übrigens ist <code>register</code> ein denkbar schlechter Name für eine Methode. <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>Jup, ist mir auch aufgefallen, aber der Name hat so schön gepasst.. <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/1718593</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718593</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 31 May 2009 12:08:17 GMT</pubDate></item></channel></rss>