<?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[Objekt instantieren und sofort in Container speichern]]></title><description><![CDATA[<p>Hallo zusammen!<br />
Der Titel sagt eigentlich schon fast alles.. ich will, dass ein Objekt einer Klasse nicht erzeugt werden kann, ohne dass es in einem Container steht.</p>
<p>Ich such jetzt schon ewig und komme nicht dahinter -.-</p>
<p>bitte um hilfe <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="🙂"
    /><br />
mfg simon</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/258265/objekt-instantieren-und-sofort-in-container-speichern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 10:35:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/258265.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 Jan 2010 14:17:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:17:40 GMT]]></title><description><![CDATA[<p>Hallo zusammen!<br />
Der Titel sagt eigentlich schon fast alles.. ich will, dass ein Objekt einer Klasse nicht erzeugt werden kann, ohne dass es in einem Container steht.</p>
<p>Ich such jetzt schon ewig und komme nicht dahinter -.-</p>
<p>bitte um hilfe <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="🙂"
    /><br />
mfg simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835024</guid><dc:creator><![CDATA[simon90]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:17:40 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:20:01 GMT]]></title><description><![CDATA[<p>simon90 schrieb:</p>
<blockquote>
<p>Hallo zusammen!<br />
Der Titel sagt eigentlich schon fast alles.. ich will, dass ein Objekt einer Klasse nicht erzeugt werden kann, ohne dass es in einem Container steht.</p>
</blockquote>
<p>Um WAS zu tun? Das ist ne etwas seltsame Anforderung, du versuchst da bestimmt irgendwas zu erreichen was auch anders umsetzbar ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835027</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:20:01 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:20:14 GMT]]></title><description><![CDATA[<p>Da müsstest du schon deinen eigenen Container für schreiben, der dann Exklusivrechte auf die Erzeugung dieser Objekte bekommt.</p>
<p>Gegenfrage: Wozu soll das gut sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835028</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835028</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:20:14 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:23:04 GMT]]></title><description><![CDATA[<p>Das geht natürlich in dem du einfach eine statische Funktion in der Klasse erstellst, die als Parameter den Container bekommt und dafür dann das Objekt anlegt. Den Konstruktor einfach dann nicht public machen. &quot;Müsste&quot; gehen (ungetestet). Finde ich aber auch häßlich. Hat mich bei meiner Frau aber auch nicht abgehalten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835030</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:23:04 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:24:44 GMT]]></title><description><![CDATA[<p>vllt habt ihr recht und es geht viel einfacher.. vllt sitz ich schon den ganzen tag und verstricke mich immer weiter rein und verlier den Überblick</p>
<p>Ich arbeite mit DirectX und möchte ca 30 Objekte erzeugen welche später gezeichnet werden. Damit ich 1) keins vergesse und 2) mich nicht darum kümmern muss, möchte ich sie in eine liste</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835034</guid><dc:creator><![CDATA[simon90]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:24:44 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:26:39 GMT]]></title><description><![CDATA[<p>Dann erzeug sie und pack sie dann in eine Liste...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835035</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835035</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:26:39 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:26:40 GMT]]></title><description><![CDATA[<p>Fellhuhn schrieb:</p>
<blockquote>
<p>Das geht natürlich in dem du einfach eine statische Funktion in der Klasse erstellst, die als Parameter den Container bekommt und dafür dann das Objekt anlegt. Den Konstruktor einfach dann nicht public machen. &quot;Müsste&quot; gehen (ungetestet). Finde ich aber auch häßlich. Hat mich bei meiner Frau aber auch nicht abgehalten.</p>
</blockquote>
<p>klingt ganz gut und werd ich mal so probieren danke mal für die schnellen antworten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835036</guid><dc:creator><![CDATA[simon90]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:26:40 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:36:58 GMT]]></title><description><![CDATA[<blockquote>
<p>Ich such jetzt schon ewig und komme nicht dahinter -.-</p>
</blockquote>
<p>Im Konstruktor kann das Objekt sich selbst im &quot;Objektmanager&quot; eintragen. Beim Defaultkonstruktor kann ja ein default Objektmanager stehen (wahrscheinlich als Singleton realisert). Oder aber du bietest eine ueberladene Variante des Konstruktors an, in dem du den Container als Parameter angibst.</p>
<blockquote>
<p>Um WAS zu tun? Das ist ne etwas seltsame Anforderung, du versuchst da bestimmt irgendwas zu erreichen was auch anders umsetzbar ist. ... Gegenfrage: Wozu soll das gut sein?</p>
</blockquote>
<p>Nein, das ist keine seltsame Anforderung. Angenommen du schreibst ein (Baller)Spiel und feuerst Projektile ab. Dann sollen bei der Erzeugung der Projektile durch die Feuerwaffe, diese der Welt automatisch als physikalische Objekte hinzugefuegt werden, ohne dass fuer die Kanone (-kugel, Projektil) die Welt als expliziter Parameter bekannt ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835039</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835039</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:36:58 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:31:19 GMT]]></title><description><![CDATA[<p>Kommt zwar drauf an, aber wahrscheinlich wäre es bei dir sinnvoll, wenn sich deine Objektinstanzen selbst aus einer statischen Liste ein- und austragen (d.h. im Konstruktor/Destruktor).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835041</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835041</guid><dc:creator><![CDATA[Athar]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:31:19 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 14:54:26 GMT]]></title><description><![CDATA[<p>Fellhuhn schrieb:</p>
<blockquote>
<p>Das geht natürlich in dem du einfach eine statische Funktion in der Klasse erstellst, die als Parameter den Container bekommt und dafür dann das Objekt anlegt. Den Konstruktor einfach dann nicht public machen. &quot;Müsste&quot; gehen (ungetestet). Finde ich aber auch häßlich. Hat mich bei meiner Frau aber auch nicht abgehalten.</p>
</blockquote>
<p>Alternative dazu, bzw. ähnliches Prinzip: Eine Factory die die exklusiven Erzeugungsrechte hat und die Objekte in einem entsprechenden Container unterbringt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835053</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:54:26 GMT</pubDate></item><item><title><![CDATA[Reply to Objekt instantieren und sofort in Container speichern on Fri, 08 Jan 2010 19:09:15 GMT]]></title><description><![CDATA[<p>knivil schrieb:</p>
<blockquote>
<blockquote>
<p>Um WAS zu tun? Das ist ne etwas seltsame Anforderung, du versuchst da bestimmt irgendwas zu erreichen was auch anders umsetzbar ist. ... Gegenfrage: Wozu soll das gut sein?</p>
</blockquote>
<p>Nein, das ist keine seltsame Anforderung. Angenommen du schreibst ein (Baller)Spiel und feuerst Projektile ab. Dann sollen bei der Erzeugung der Projektile durch die Feuerwaffe, diese der Welt automatisch als physikalische Objekte hinzugefuegt werden, ohne dass fuer die Kanone (-kugel, Projektil) die Welt als expliziter Parameter bekannt ist.</p>
</blockquote>
<p>Klar macht es Sinn, den &quot;Erzeugen&quot; und den &quot;Merken&quot; Teil irgendwie an einer Stelle zusammenzufassen, so dass man es nicht zigfach wiederholen muss.</p>
<p>Das heisst aber nicht, dass man es unbedingt unmöglich machen muss, die beiden Teile getrennt auszuführen. Im Gegenteil, man erzwingt dadurch eine enge Kopplung von zwei Klassen, die oft nicht nötig wäre.</p>
<p>p.S.: natürlich muss man die Klassen nicht direkt koppeln. Man muss aber zumindest die zu Erzeugende Klasse eng an die Factory binden (auch wenn die Factory ein unabhängiger Teil ist), und die Factory wiederum benötigt eine (möglicherweise recht lose) Kopplung mit der Container Klasse. Insgesamt alles also wesentlich restriktiver als IMO nötig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835199</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Fri, 08 Jan 2010 19:09:15 GMT</pubDate></item></channel></rss>