<?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[spezieller Klassen-Konstruktor im Array]]></title><description><![CDATA[<p>Hallo community,</p>
<p>für mich ist es unlogisch warum ich nicht einen speziellen Konstruktor einer Klasse als array-Definition aufrufen kann. Kann mir das jemand erklären?<br />
Bsp:</p>
<pre><code>#include&lt;cstddef&gt;
#include&lt;iostream&gt;
#include &lt;windows.h&gt;

class Foo
{
   private: 
      int *p;
      size_t length;
   public:
      Foo(): length(0)
      {
         p=new int(length);
         std::cout &lt;&lt; &quot;Standard Konstruktor Foo. Variable length= &quot; &lt;&lt; length &lt;&lt; std::endl;
      }
      Foo(size_t size): length(size)
      {
         p=new int(length);
         std::cout &lt;&lt; &quot;Spezieller Konstruktor Foo. Variable length= &quot; &lt;&lt; length &lt;&lt; std::endl;
      }
};

int main()
{
   Foo *a = new Foo(5);     // geht
   Foo *a = new Foo(5)[3];  // geht nicht
   system(&quot;pause&quot;);
   return 0;

}
</code></pre>
<p>Wie überlade ich gegebenenfalls den new-Operator?<br />
Danke.</p>
<p>Heuni</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/322967/spezieller-klassen-konstruktor-im-array</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 11:27:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/322967.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 13 Jan 2014 23:11:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to spezieller Klassen-Konstruktor im Array on Mon, 13 Jan 2014 23:11:40 GMT]]></title><description><![CDATA[<p>Hallo community,</p>
<p>für mich ist es unlogisch warum ich nicht einen speziellen Konstruktor einer Klasse als array-Definition aufrufen kann. Kann mir das jemand erklären?<br />
Bsp:</p>
<pre><code>#include&lt;cstddef&gt;
#include&lt;iostream&gt;
#include &lt;windows.h&gt;

class Foo
{
   private: 
      int *p;
      size_t length;
   public:
      Foo(): length(0)
      {
         p=new int(length);
         std::cout &lt;&lt; &quot;Standard Konstruktor Foo. Variable length= &quot; &lt;&lt; length &lt;&lt; std::endl;
      }
      Foo(size_t size): length(size)
      {
         p=new int(length);
         std::cout &lt;&lt; &quot;Spezieller Konstruktor Foo. Variable length= &quot; &lt;&lt; length &lt;&lt; std::endl;
      }
};

int main()
{
   Foo *a = new Foo(5);     // geht
   Foo *a = new Foo(5)[3];  // geht nicht
   system(&quot;pause&quot;);
   return 0;

}
</code></pre>
<p>Wie überlade ich gegebenenfalls den new-Operator?<br />
Danke.</p>
<p>Heuni</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2377184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2377184</guid><dc:creator><![CDATA[Heuni Greenfreak]]></dc:creator><pubDate>Mon, 13 Jan 2014 23:11:40 GMT</pubDate></item><item><title><![CDATA[Reply to spezieller Klassen-Konstruktor im Array on Mon, 13 Jan 2014 23:25:19 GMT]]></title><description><![CDATA[<p>new gar nicht überladen.<br />
nimm statt des rohen arrays eine passende containerklasse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2377188</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2377188</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 13 Jan 2014 23:25:19 GMT</pubDate></item><item><title><![CDATA[Reply to spezieller Klassen-Konstruktor im Array on Tue, 14 Jan 2014 16:35:52 GMT]]></title><description><![CDATA[<p>nein, Containerklasse kann ich leider nicht nehmen. Ich brauche leider die Basics, da ich ein vorhandenes Projekt ändere.<br />
Das mit dem Array im Array ist auch nur ein Beispiel. Das Foo-Objekt kann alles mögliche sein.</p>
<p>Ich möchte einfach nur einen speziellen Klassen-Konstruktor für ein Array aufrufen?? Also, muss ich den new-Operator überladen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2377285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2377285</guid><dc:creator><![CDATA[Heuni Greenfreak]]></dc:creator><pubDate>Tue, 14 Jan 2014 16:35:52 GMT</pubDate></item><item><title><![CDATA[Reply to spezieller Klassen-Konstruktor im Array on Tue, 14 Jan 2014 17:01:14 GMT]]></title><description><![CDATA[<p>Heuni Greenfreak schrieb:</p>
<blockquote>
<p>Ich möchte einfach nur einen speziellen Klassen-Konstruktor für ein Array aufrufen?? Also, muss ich den new-Operator überladen?</p>
</blockquote>
<p>Nein, benutz einen Container den du meinetwegen selber geschrieben hast der das für dich tut.</p>
<p>Du kommst bei new Überladungen in teufels küche.</p>
<p>ansonsten kannst du auch ::operator new verwenden um den rohen Speicher zu besorgen und std::uninitialized_fill zum erstellen der Objekte. Das ganze in eine Funktion gepackt ist viel viel viel besser als new zu überladen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2377292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2377292</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Tue, 14 Jan 2014 17:01:14 GMT</pubDate></item></channel></rss>