<?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[Problem mit Konstruktoraufruf]]></title><description><![CDATA[<p>hi,</p>
<p>ich möchte über ein objekt der abgeleiteten klasse den konstruktor der basisklasse aufrufen aber irgendwie klappt das nicht so ganz.</p>
<p>beim ersten objekt zur basisklasse kommt 10 raus. beim objekt zur abgl. klassen ebenfalls wobei 40 rauskommen sollte.</p>
<p>hab mal in den debugger geschaut und er springt auch in die basiskonstr. und weißt den variablen die 10 zu aber beim rücksprung in die abgl. klasse hab ich wieder 1,2,3,4 in den variebalen stehen...</p>
<p>irgendeine idee woran das liegt?</p>
<p>danke und gruß</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class viereck 
{
private:
	int a,b,c,d;
public:
	viereck(int w=1, int x=2, int y=3, int z=4)
	{
		a=w;
		b=x;
		c=y;
		d=z;
	}
	int umfang()
	{
		return a+b+c+d;
	}
};

class quadrat : public viereck 
{
public:
	quadrat(int t=5)
	{
		viereck(t,t,t,t);
	}
};

int main ()
{
	viereck abc;
	cout &lt;&lt; abc.umfang() &lt;&lt; endl;
	quadrat xyz(10);
	cout &lt;&lt; xyz.umfang() &lt;&lt; endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/152443/problem-mit-konstruktoraufruf</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 00:35:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/152443.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 06 Jul 2006 11:08:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 11:08:30 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>ich möchte über ein objekt der abgeleiteten klasse den konstruktor der basisklasse aufrufen aber irgendwie klappt das nicht so ganz.</p>
<p>beim ersten objekt zur basisklasse kommt 10 raus. beim objekt zur abgl. klassen ebenfalls wobei 40 rauskommen sollte.</p>
<p>hab mal in den debugger geschaut und er springt auch in die basiskonstr. und weißt den variablen die 10 zu aber beim rücksprung in die abgl. klasse hab ich wieder 1,2,3,4 in den variebalen stehen...</p>
<p>irgendeine idee woran das liegt?</p>
<p>danke und gruß</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class viereck 
{
private:
	int a,b,c,d;
public:
	viereck(int w=1, int x=2, int y=3, int z=4)
	{
		a=w;
		b=x;
		c=y;
		d=z;
	}
	int umfang()
	{
		return a+b+c+d;
	}
};

class quadrat : public viereck 
{
public:
	quadrat(int t=5)
	{
		viereck(t,t,t,t);
	}
};

int main ()
{
	viereck abc;
	cout &lt;&lt; abc.umfang() &lt;&lt; endl;
	quadrat xyz(10);
	cout &lt;&lt; xyz.umfang() &lt;&lt; endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1092401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092401</guid><dc:creator><![CDATA[Da_Pedro]]></dc:creator><pubDate>Thu, 06 Jul 2006 11:08:30 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 11:10:19 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">class quadrat : public viereck 
{
public:
  quadrat(int t=5)
    :  viereck(t,t,t,t)
  {
  }

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1092402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092402</guid><dc:creator><![CDATA[ssm]]></dc:creator><pubDate>Thu, 06 Jul 2006 11:10:19 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 11:25:04 GMT]]></title><description><![CDATA[<p>danke, so gehts.</p>
<p>aber was mich interessiert ( will dabei auch was lernen <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="🙂"
    /> ) was denn der unterschied ist zwischen den 2 aufrufen. bei mir im anweisungsblock und bei dir durch das :</p>
<pre><code class="language-cpp">quadrat(int t=5)
    {
        viereck(t,t,t,t);
    }
</code></pre>
<pre><code class="language-cpp">quadrat(int t=5)
    :  viereck(t,t,t,t)
  {
  }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1092415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092415</guid><dc:creator><![CDATA[Da_Pedro]]></dc:creator><pubDate>Thu, 06 Jul 2006 11:25:04 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 12:09:03 GMT]]></title><description><![CDATA[<p>das ist eine initialisierungsliste...<br />
schaue dazu hier: <a href="http://tutorial.schornboeck.net/initliste.htm" rel="nofollow">http://tutorial.schornboeck.net/initliste.htm</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092441</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092441</guid><dc:creator><![CDATA[ser1al]]></dc:creator><pubDate>Thu, 06 Jul 2006 12:09:03 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 12:10:01 GMT]]></title><description><![CDATA[<p>Das hinter dem Doppelpunkt nennt sich &quot;Initialisierungsliste&quot;, da kann man Variablen der Klasse direkt mit Werten initialisieren... zB wenn du eine Objekt einer Klasse, die keinen Standardkonstruktor hat, in deiner Klasse hast, dann musst du ja einen anderen Konstruktor aufrufen.<br />
Die Variablen in der Initialisierungsliste werde in der Reihenfolge, in der sie in der Klassendefinition stehen, initialisiert!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092443</guid><dc:creator><![CDATA[Dommel]]></dc:creator><pubDate>Thu, 06 Jul 2006 12:10:01 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 12:31:56 GMT]]></title><description><![CDATA[<p>Genau gesagt, hast du bei deinem Aufruf den Defaultkonstruktor von Viereck bei der Initialisierung von Quadrat aufgerufen und dann innerhalb dieses Konstruktors eine lokale unbenannte Instanz von Viereck erzeugt. Einen Konstruktor kann man so nicht direkt aufrufen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092454</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092454</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 06 Jul 2006 12:31:56 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Konstruktoraufruf on Thu, 06 Jul 2006 12:57:11 GMT]]></title><description><![CDATA[<p>vielen dank für eure tipps und erklärungen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092484</guid><dc:creator><![CDATA[Da_Pedro]]></dc:creator><pubDate>Thu, 06 Jul 2006 12:57:11 GMT</pubDate></item></channel></rss>