<?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[Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt.]]></title><description><![CDATA[<p>Hallo Miteinander ich stehe vor einem für mich unbegreiflichen Problem <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=":open_mouth:"
      alt="😮"
    /></p>
<p>Wiso wird keine Werte zuweisung ausgeführt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Der Konstruktor wird zwar aufgerufen aber die Werte nicht zugewisen</p>
<pre><code class="language-cpp">//---------------------------------------------------------------------------

#include &lt;vcl.h&gt;
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
#include &lt;iostream&gt;

using namespace std;

//Klassendeklarationen

class CFahrzeuge
{
  protected:
   int m_Tank;
   int m_Energie;
   float m_fGeschwindigkeit;
  public:
   void Patrouliere() {cout &lt;&lt; &quot;Fahrzueg Patrouliert\n&quot;;}
   void Bewache() {cout &lt;&lt; &quot;Fahrzueg Bewacht\n&quot;;}
};

class CPanzer : public CFahrzeuge
{
   private:
     int  m_raketen;
   public:
      CPanzer()
      {
         m_raketen = 10;
         m_Tank = 1000;
         m_Energie = 133;
      }
   void Schiesse()
   {
      m_raketen--;
      cout &lt;&lt; &quot;Schuss Abgefeuert Sie haben noch: &quot; &lt;&lt; m_raketen &lt;&lt; &quot;Zur Verfuegung\n&quot;;
   }
   void Test()
   {
   cout &lt;&lt; m_raketen &lt;&lt; endl;
   cout &lt;&lt; m_Energie &lt;&lt; endl;
   }
};

class CTransporter : public CFahrzeuge
{
   private:
     int m_Plaetze;
   public:
      CTransporter()
      {
         m_Plaetze = 20;
         m_Tank = 1000;
         m_Energie = 133;
      }
   void BeLaden()
   {
      m_Plaetze--;
      cout &lt;&lt; &quot;Person Aufgeladen es hat noch: &quot; &lt;&lt; m_Plaetze &lt;&lt; &quot;Zur Verfügung\n&quot;;
   }
};

//Funktionen

void ZeigeMenue();
void MakePanzer(int &amp;PanzerCount);
void MakeTransporter();
void ZeigerArmee();

int main()
{
ZeigeMenue();

}
void ZeigeMenue()
{
  char Wahl;
  int PanzerCount = 0;
  do
  {
     cout &lt;&lt; &quot;Hell Armes V 1.2\n&quot;;
     cout &lt;&lt; &quot;------------------\n&quot;;
     cout &lt;&lt; &quot;Neues Fahrzeug erstellen:\n&quot;;
     cout &lt;&lt; &quot;(P)anzer\n&quot;;
     cout &lt;&lt; &quot;(T)ransporter\n&quot;;
     cout &lt;&lt; &quot;(E)ende\n&quot;;
     cout &lt;&lt; &quot;(I)nformationen&quot;;
     cout &lt;&lt; &quot;Wahl:&quot;;
     cin &gt;&gt; Wahl;
     switch (Wahl)
     {
        case ('P'):
        case ('p'):
        {
           MakePanzer(PanzerCount);
        }break;
     }
  } while(Wahl != 'E' &amp;&amp; Wahl != 'e');
}

void MakePanzer(int &amp;PanzerCount)
{
PanzerCount ++;
CPanzer *pPanzer = NULL;
pPanzer = new CPanzer[PanzerCount];
pPanzer[PanzerCount].Test();
pPanzer[PanzerCount].Schiesse();
pPanzer[PanzerCount].Bewache();
}
//---------------------------------------------------------------------------
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/129800/wiso-wird-konstruktor-nicht-ordnungsgmäs-ausgeführt</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 10:51:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/129800.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 16 Dec 2005 18:42:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt. on Fri, 16 Dec 2005 18:42:28 GMT]]></title><description><![CDATA[<p>Hallo Miteinander ich stehe vor einem für mich unbegreiflichen Problem <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=":open_mouth:"
      alt="😮"
    /></p>
<p>Wiso wird keine Werte zuweisung ausgeführt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Der Konstruktor wird zwar aufgerufen aber die Werte nicht zugewisen</p>
<pre><code class="language-cpp">//---------------------------------------------------------------------------

#include &lt;vcl.h&gt;
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
#include &lt;iostream&gt;

using namespace std;

//Klassendeklarationen

class CFahrzeuge
{
  protected:
   int m_Tank;
   int m_Energie;
   float m_fGeschwindigkeit;
  public:
   void Patrouliere() {cout &lt;&lt; &quot;Fahrzueg Patrouliert\n&quot;;}
   void Bewache() {cout &lt;&lt; &quot;Fahrzueg Bewacht\n&quot;;}
};

class CPanzer : public CFahrzeuge
{
   private:
     int  m_raketen;
   public:
      CPanzer()
      {
         m_raketen = 10;
         m_Tank = 1000;
         m_Energie = 133;
      }
   void Schiesse()
   {
      m_raketen--;
      cout &lt;&lt; &quot;Schuss Abgefeuert Sie haben noch: &quot; &lt;&lt; m_raketen &lt;&lt; &quot;Zur Verfuegung\n&quot;;
   }
   void Test()
   {
   cout &lt;&lt; m_raketen &lt;&lt; endl;
   cout &lt;&lt; m_Energie &lt;&lt; endl;
   }
};

class CTransporter : public CFahrzeuge
{
   private:
     int m_Plaetze;
   public:
      CTransporter()
      {
         m_Plaetze = 20;
         m_Tank = 1000;
         m_Energie = 133;
      }
   void BeLaden()
   {
      m_Plaetze--;
      cout &lt;&lt; &quot;Person Aufgeladen es hat noch: &quot; &lt;&lt; m_Plaetze &lt;&lt; &quot;Zur Verfügung\n&quot;;
   }
};

//Funktionen

void ZeigeMenue();
void MakePanzer(int &amp;PanzerCount);
void MakeTransporter();
void ZeigerArmee();

int main()
{
ZeigeMenue();

}
void ZeigeMenue()
{
  char Wahl;
  int PanzerCount = 0;
  do
  {
     cout &lt;&lt; &quot;Hell Armes V 1.2\n&quot;;
     cout &lt;&lt; &quot;------------------\n&quot;;
     cout &lt;&lt; &quot;Neues Fahrzeug erstellen:\n&quot;;
     cout &lt;&lt; &quot;(P)anzer\n&quot;;
     cout &lt;&lt; &quot;(T)ransporter\n&quot;;
     cout &lt;&lt; &quot;(E)ende\n&quot;;
     cout &lt;&lt; &quot;(I)nformationen&quot;;
     cout &lt;&lt; &quot;Wahl:&quot;;
     cin &gt;&gt; Wahl;
     switch (Wahl)
     {
        case ('P'):
        case ('p'):
        {
           MakePanzer(PanzerCount);
        }break;
     }
  } while(Wahl != 'E' &amp;&amp; Wahl != 'e');
}

void MakePanzer(int &amp;PanzerCount)
{
PanzerCount ++;
CPanzer *pPanzer = NULL;
pPanzer = new CPanzer[PanzerCount];
pPanzer[PanzerCount].Test();
pPanzer[PanzerCount].Schiesse();
pPanzer[PanzerCount].Bewache();
}
//---------------------------------------------------------------------------
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/943759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943759</guid><dc:creator><![CDATA[Rudolf das Rentier]]></dc:creator><pubDate>Fri, 16 Dec 2005 18:42:28 GMT</pubDate></item><item><title><![CDATA[Reply to Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt. on Fri, 16 Dec 2005 19:11:12 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">pPanzer = new CPanzer[PanzerCount];  
pPanzer[PanzerCount].Test();      // den panzer gibt's nicht du hast einen weniger angelegt
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/943783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943783</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:11:12 GMT</pubDate></item><item><title><![CDATA[Reply to Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt. on Fri, 16 Dec 2005 19:32:57 GMT]]></title><description><![CDATA[<p>Nicht ein Panzer weniger wurde erzeugt, sondern die Indizierung falsch gewählt: Ein Feld mit n Werten besitzt die Indizes 0 bis n-1. Durch</p>
<pre><code class="language-cpp">pPanzer[PanzerCount].Test();
</code></pre>
<p>wird dann hinter dem eigentlichen Array zugegriffen, in Java würde das zu einer ArrayIndexOutOfBoundsException führen. Bei den einfachen PointerArrays in C++ wird jedoch kein RangeChecking durchgeführt und man liest/schreibt einfach in Speicherbereichen, in denen womöglich was ganz anderes liegt, was dann zu herrlichen Fehlern führen kann...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/943800</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943800</guid><dc:creator><![CDATA[Aconcagua]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:32:57 GMT</pubDate></item><item><title><![CDATA[Reply to Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt. on Fri, 16 Dec 2005 19:40:48 GMT]]></title><description><![CDATA[<p>Aconcagua schrieb:</p>
<blockquote>
<p>Nicht ein Panzer weniger wurde erzeugt, sondern die Indizierung falsch gewählt: Ein Feld mit n Werten besitzt die Indizes 0 bis n-1.</p>
</blockquote>
<p>Und wo ist da der Unterschied ???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/943813</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943813</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:40:48 GMT</pubDate></item><item><title><![CDATA[Reply to Wiso wird Konstruktor nicht ordnungsgmäs ausgeführt. on Mon, 19 Dec 2005 08:08:24 GMT]]></title><description><![CDATA[<p>Du erzeugst n Panzer, auf die du anschließend mit &quot;pPanzer[0]&quot; bis &quot;pPanzer[PanzerCount-1]&quot; zugreifen könntest - das Element &quot;pPanzer[PanzerCount]&quot; liegt direkt <strong>hinter</strong> dem Array und enthält bestenfalls Datenmüll (im schlimmsten Fall greifst du auf Daten zu, die einem anderen Objekt gehören).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/945292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/945292</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 19 Dec 2005 08:08:24 GMT</pubDate></item></channel></rss>