<?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[BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors]]></title><description><![CDATA[<p>Ich hab mal wieder ein kleines Problem und steh grad auf dem schlauch,<br />
ich hoff jemand blickt mein problem ist nicht ganz leicht zu erklären.</p>
<p>Ich habe eine Basisklasse von der ich eine weitere klasse ableite.<br />
Wenn ich nun den konstruktor der abgeleiteten klasse aufrufe gebe ich ihm<br />
einige argumente mit. Diese Argumente soll der Konstruktor der Basisklasse,<br />
der ja implizit auch aufgerufen wird auch erhalten (den er braucht sie eigentlcih)<br />
nur erhält er die argumente nicht, er wird als normaler default-konstruktor aufgerufen.<br />
So sehen die Konstruktoren aus</p>
<pre><code class="language-cpp">figure(const char* =NULL,int=800,int=600); //Basis
moveable_figure(const char* =NULL,int=800,int=600); //abgeleitet
</code></pre>
<p>ich instanziere ein objekt,<br />
moveable_figure back2(&quot;schlaeger.png&quot;);<br />
jedoch erhält der basiskonstruktor nicht dieses argument sondern er nimmt das default-argument null.</p>
<p>Wie kann ich das umgehen? Hat einer nenn Vorschlag?<br />
Wenn es zu schelcht erklärt ist sagt es <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>
]]></description><link>https://www.c-plusplus.net/forum/topic/146150/basiskonstruktor-braucht-die-argumente-des-abgeleiteten-konstruktors</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 14:13:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/146150.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 04 May 2006 18:02:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors on Thu, 04 May 2006 18:02:53 GMT]]></title><description><![CDATA[<p>Ich hab mal wieder ein kleines Problem und steh grad auf dem schlauch,<br />
ich hoff jemand blickt mein problem ist nicht ganz leicht zu erklären.</p>
<p>Ich habe eine Basisklasse von der ich eine weitere klasse ableite.<br />
Wenn ich nun den konstruktor der abgeleiteten klasse aufrufe gebe ich ihm<br />
einige argumente mit. Diese Argumente soll der Konstruktor der Basisklasse,<br />
der ja implizit auch aufgerufen wird auch erhalten (den er braucht sie eigentlcih)<br />
nur erhält er die argumente nicht, er wird als normaler default-konstruktor aufgerufen.<br />
So sehen die Konstruktoren aus</p>
<pre><code class="language-cpp">figure(const char* =NULL,int=800,int=600); //Basis
moveable_figure(const char* =NULL,int=800,int=600); //abgeleitet
</code></pre>
<p>ich instanziere ein objekt,<br />
moveable_figure back2(&quot;schlaeger.png&quot;);<br />
jedoch erhält der basiskonstruktor nicht dieses argument sondern er nimmt das default-argument null.</p>
<p>Wie kann ich das umgehen? Hat einer nenn Vorschlag?<br />
Wenn es zu schelcht erklärt ist sagt es <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1051046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051046</guid><dc:creator><![CDATA[Mario Sandler]]></dc:creator><pubDate>Thu, 04 May 2006 18:02:53 GMT</pubDate></item><item><title><![CDATA[Reply to BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors on Thu, 04 May 2006 18:10:27 GMT]]></title><description><![CDATA[<p><a href="http://Storm.Xapek.de" rel="nofollow">Storm.Xapek.de</a> schrieb:</p>
<blockquote>
<p>Diese Argumente soll der Konstruktor der Basisklasse,<br />
der ja implizit auch aufgerufen wird auch erhalten (den er braucht sie eigentlcih)<br />
nur erhält er die argumente nicht, er wird als normaler default-konstruktor aufgerufen.</p>
</blockquote>
<p>Ja, das mußt Du in der Implementierung Deines Konstruktors auch hinschreiben!</p>
<pre><code class="language-cpp">moveable_figure(const char* name=NULL,int x=800,int y=600) : figure(name, x, y)
{
  // Rest vom Konstruktor
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1051053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051053</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Thu, 04 May 2006 18:10:27 GMT</pubDate></item><item><title><![CDATA[Reply to BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors on Thu, 04 May 2006 18:21:56 GMT]]></title><description><![CDATA[<p>Funktioniert!<br />
Danke.<br />
Dieses &quot;Feature&quot; hab ich noch nicht gekannt,<br />
man lernt halt nie aus. Weist du zu fällig,<br />
wie man ein solches Vorgehen nennt?<br />
(oder Stichwörter worunter amn das findet,<br />
ich möchte mich da mal genauer informieren)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1051067</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051067</guid><dc:creator><![CDATA[Mario Sandler]]></dc:creator><pubDate>Thu, 04 May 2006 18:21:56 GMT</pubDate></item><item><title><![CDATA[Reply to BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors on Thu, 04 May 2006 18:25:39 GMT]]></title><description><![CDATA[<p>&quot;Initialisierungsliste&quot;</p>
<p>Dort kannst Du übrigens auch die Member der Klasse auf gleiche Weise initialisieren.</p>
<pre><code class="language-cpp">class X {
  vector&lt;string&gt; args;

  X(int argc, const char** argv):
    args(argv, argv + argc)
  {}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1051072</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051072</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 04 May 2006 18:25:39 GMT</pubDate></item><item><title><![CDATA[Reply to BasisKonstruktor braucht die Argumente des Abgeleiteten Konstruktors on Thu, 04 May 2006 18:26:57 GMT]]></title><description><![CDATA[<p>Das hinter dem Doppelpunkt heißt Initialsierungsliste. Man kann dort auch seine Membervariablen initialisieren. Dann benötigen die keinen Default-Konstruktor, sondern werden direkt mit dem Argument konstruiert. Das ist unter Umständen auch schneller, als erst Default-Konstruktor und dann Zuweisung. Wichtig dabei ist, daß die Member in der Reihenfolge initialisiert werden, wie sie in der Klasse stehen, nicht in der Reihenfolge in der Initialisierungsliste. Daher macht man die beiden am besten in der gleichen Reihenfolge, um nicht aus versehen auf etwas nicht initialisiertes zuzugreifen.</p>
<p>Siehe auch Effektiv C++ Programmieren. <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>MfG Jester</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1051075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051075</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Thu, 04 May 2006 18:26:57 GMT</pubDate></item></channel></rss>