<?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[Klasse einmal instanzierbar machen]]></title><description><![CDATA[<p>Hi,<br />
Ich würde gerne eine Klasse lediglich einmal instanzierbar machen.<br />
Ich glaueb es gab für solche Klassen einen bstimmten Fachausdruck, unter welchem im Netz auch Quellcode zu finden ist.<br />
Ich könnte ne Klassenvariable im Konstruktor abfragen... Aber glaub da gabs was besseres.</p>
<p>Gtuß Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/269660/klasse-einmal-instanzierbar-machen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 13:34:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/269660.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 29 Jun 2010 09:16:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:16:14 GMT]]></title><description><![CDATA[<p>Hi,<br />
Ich würde gerne eine Klasse lediglich einmal instanzierbar machen.<br />
Ich glaueb es gab für solche Klassen einen bstimmten Fachausdruck, unter welchem im Netz auch Quellcode zu finden ist.<br />
Ich könnte ne Klassenvariable im Konstruktor abfragen... Aber glaub da gabs was besseres.</p>
<p>Gtuß Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918768</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918768</guid><dc:creator><![CDATA[AlexanderKiebler]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:16:14 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:18:09 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Schau mal nach Singleton.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918770</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:18:09 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:20:59 GMT]]></title><description><![CDATA[<p>Versuchs mit einer anonymen Klasse, fallst du keinen Konstruktor hast/brauchst. Soviel ich weiß lassen sie sich nur einmal instantiieren weil man sie durch den fehlenden Namen ja nicht ansprechen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918774</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918774</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:20:59 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:20:25 GMT]]></title><description><![CDATA[<p>Genau,</p>
<p>Okay danke danach hab ich gesucht.<br />
Das ging flott.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918775</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918775</guid><dc:creator><![CDATA[AlexanderKiebler]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:20:25 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:23:18 GMT]]></title><description><![CDATA[<p>AlexanderKiebler schrieb:</p>
<blockquote>
<p>Hi,<br />
Ich würde gerne eine Klasse lediglich einmal instanzierbar machen.<br />
Ich glaueb es gab für solche Klassen einen bstimmten Fachausdruck, unter welchem im Netz auch Quellcode zu finden ist.<br />
Ich könnte ne Klassenvariable im Konstruktor abfragen... Aber glaub da gabs was besseres.</p>
<p>Gtuß Alex</p>
</blockquote>
<p>Wie BRaunstein sagte: Ein Singleton. Hier ein Beispiel für Dich:</p>
<pre><code class="language-cpp">class MyClass
{
private:
   MyClass() {}

   // verhindert das kopieren, geht auch indem man von boost::noncopyable erbt
   MyClass(const MyClass&amp;){}
   MyClass&amp; operator=(MyClass&amp;){ return this; } 
public:

   static MyClass&amp; GetInstance()
   {
      static MyClass OnlyOne;
      return OnlyOne;
   } 
};
</code></pre>
<p>Die Klasse lässt sich dank des privaten Konstruktors nur einmal instanzieren und nicht kopieren.<br />
HTH<br />
rya.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918777</guid><dc:creator><![CDATA[[[global:former_user]]]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:23:18 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:27:16 GMT]]></title><description><![CDATA[<p>AlexanderKiebler schrieb:</p>
<blockquote>
<p>Genau,</p>
<p>Okay danke danach hab ich gesucht.<br />
Das ging flott.</p>
</blockquote>
<p>Wenn, dass das richtige war, dann programmierst du nicht in C++ <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":O"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918780</guid><dc:creator><![CDATA[Zeus]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:27:16 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 09:40:15 GMT]]></title><description><![CDATA[<p>Zeus schrieb:</p>
<blockquote>
<p>Wenn, dass das richtige war, dann programmierst du nicht in C++ <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":O"
      alt="😮"
    /></p>
</blockquote>
<p>Manchmal macht es doch Sinn die Klasse zu verriegeln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918784</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918784</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 29 Jun 2010 09:40:15 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 10:03:52 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Manchmal macht es doch Sinn die Klasse zu verriegeln.</p>
</blockquote>
<p>Das Problem ist, dass man bei fehlendem Namen keine Konstruktoren bereitstellen kann und auch sonst nicht verhindern kann, dass mehrere Instanzen angelegt werden:</p>
<pre><code class="language-cpp">struct
{
   // ...
} anonymous;

template &lt;typename T&gt;
void Func(const T&amp;)
{
    T duplicate;
}

Func(anonymous);
</code></pre>
<p>In C++0x wirds sogar noch einfacher:</p>
<pre><code class="language-cpp">typedef decltype(anonymous) KnownType;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1918796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918796</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 29 Jun 2010 10:03:52 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 10:20:16 GMT]]></title><description><![CDATA[<p>Wann machts eigentlich Sinn, in C++ mit Singleton zu arbeiten<br />
??<br />
Und wann kommt jetzt endlich C++0x ?? <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>
<p>Die Klasse soll die Zeit für eine Simulation angeben. Später wird da ev. was mit OpenGL ausgegeben.</p>
<p>Für Inertialsysteme wo jedes seine eigene Zeit hat muss ich die Klasse dann wieder auf machen oder ?? =)....Aber das möchte ich gerne erstmal vermeiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918800</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918800</guid><dc:creator><![CDATA[AlexanderKiebler]]></dc:creator><pubDate>Tue, 29 Jun 2010 10:20:16 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse einmal instanzierbar machen on Tue, 29 Jun 2010 11:15:44 GMT]]></title><description><![CDATA[<p>AlexanderKiebler schrieb:</p>
<blockquote>
<p>Wann machts eigentlich Sinn, in C++ mit Singleton zu arbeiten</p>
</blockquote>
<p>Selten, aber ich würde allgemeiner sagen: Wenn eine Klasse nur eine Instanz zur Laufzeit haben wird, und von sehr zentraler Rolle über die gesamte Lebenszeit des Programms ist.</p>
<p>AlexanderKiebler schrieb:</p>
<blockquote>
<p>Und wann kommt jetzt endlich C++0x ?? <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>
</blockquote>
<p>Aller Wahrscheinlichkeit wird der Standard 2011 verabschiedet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918845</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918845</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Tue, 29 Jun 2010 11:15:44 GMT</pubDate></item></channel></rss>