<?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[[Erledigt] Konstruktor aus dem Konstruktor aufrufen]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>kann man aus einem Konstruktor einen anderen aufrufen der die &quot;Vorarbeit&quot; leisten soll?</p>
<p>Wie hier in Zeile 12,27,28:</p>
<pre><code class="language-cpp">Topoobject::Topoobject(){

	this-&gt;id = 0;
	this-&gt;color = propdefault.color;
	this-&gt;size = propdefault.size;
	this-&gt;code = propdefault.code;
	this-&gt;comment = propdefault.comment;
}

Topoobject::Topoobject(puint new_id){

	Topoobject();
	this-&gt;id = new_id;
}

Topoobject::Topoobject(topoproperty new_property){

	this-&gt;color = new_property.color;
	this-&gt;size = new_property.size;
	this-&gt;code = new_property.code;
	this-&gt;comment = new_property.comment;

}

Topoobject::Topoobject(puint new_id,topoproperty new_property){

	Topoobject(new_id);
	Topoobject(new_property);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/269271/erledigt-konstruktor-aus-dem-konstruktor-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 06:57:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/269271.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Jun 2010 13:24:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 17:13:02 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>kann man aus einem Konstruktor einen anderen aufrufen der die &quot;Vorarbeit&quot; leisten soll?</p>
<p>Wie hier in Zeile 12,27,28:</p>
<pre><code class="language-cpp">Topoobject::Topoobject(){

	this-&gt;id = 0;
	this-&gt;color = propdefault.color;
	this-&gt;size = propdefault.size;
	this-&gt;code = propdefault.code;
	this-&gt;comment = propdefault.comment;
}

Topoobject::Topoobject(puint new_id){

	Topoobject();
	this-&gt;id = new_id;
}

Topoobject::Topoobject(topoproperty new_property){

	this-&gt;color = new_property.color;
	this-&gt;size = new_property.size;
	this-&gt;code = new_property.code;
	this-&gt;comment = new_property.comment;

}

Topoobject::Topoobject(puint new_id,topoproperty new_property){

	Topoobject(new_id);
	Topoobject(new_property);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1915728</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915728</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 17:13:02 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 13:32:50 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>kann man aus einem Konstruktor einen anderen aufrufen der die &quot;Vorarbeit&quot; leisten soll?</p>
</blockquote>
<p>Nein, erst in C++0x<br />
Schau dir übrigens mal Initialisierungslisten an im Buch/Tutorial deiner Wahl.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915735</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 22 Jun 2010 13:32:50 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 13:36:54 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>darkfate schrieb:</p>
<blockquote>
<p>kann man aus einem Konstruktor einen anderen aufrufen der die &quot;Vorarbeit&quot; leisten soll?</p>
</blockquote>
<p>Nein, erst in C++0x<br />
Schau dir übrigens mal Initialisierungslisten an im Buch/Tutorial deiner Wahl.</p>
</blockquote>
<p>VS2010 hat doch den diesen Standard?!</p>
<p>Klappt irgendwie nicht.</p>
<pre><code>1&gt;error C2082: redefinition of formal parameter 'new_id'
1&gt;error C2082: redefinition of formal parameter 'new_property'
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1915737</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915737</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 13:36:54 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 13:43:31 GMT]]></title><description><![CDATA[<blockquote>
<p>VS2010 hat doch den diesen Standard?!</p>
</blockquote>
<p>Nein hat es nicht. TR1 ist zum Teil schon implementiert (natürlich nur Library Dinge).</p>
<p>Simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915743</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Tue, 22 Jun 2010 13:43:31 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 14:20:24 GMT]]></title><description><![CDATA[<p>Wie ruft man sonst den Konstruktor des Elternobjektes auf, man kann ja nicht jedes mal den Konstruktor neu schreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915763</guid><dc:creator><![CDATA[einerwiekeiner]]></dc:creator><pubDate>Tue, 22 Jun 2010 14:20:24 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 14:25:47 GMT]]></title><description><![CDATA[<p>Wie rufe ich jetzt aus einer Topoknot Klasse den Topoobject Konstruktor auf?</p>
<pre><code class="language-cpp">class Coordpair : public Topoobject{

	private:
		Coord first,second;

public:
		Coordpair();
		Coordpair(Coord first, Coord second);

		Coord get_first();
		Coord get_second();

		void set_first(Coord new_first);
		void set_second(Coord new_second);

};

class Topoknot : public Coordpair{

	private:
		Coord third;

	public:
		Topoknot();
		Topoknot(puint id);
		Topoknot(puint new_id,Coord first,Coord second,Coord third);
		Coord get_third();
		void set_third(Coord new_third);
};
</code></pre>
<p>Wenn ich:</p>
<pre><code class="language-cpp">Topoknot::Topoknot():Topoobject(propknot) { }
Topoknot::Topoknot(puint new_id):Topoobject(new_id,propknot) {}
Topoknot::Topoknot(puint new_id,Coord first,Coord second,Coord third):Topoobject(new_id,propknot){ }
</code></pre>
<p>Dann bekokmme ich folgenden Fehler:</p>
<pre><code>1&gt;error C2614: 'Topoknot' : illegal member initialization: 'Topoobject' is not a base or member
</code></pre>
<p>Ich erbe doch indirekt über die Klasse Coordpair die Basisklasse Topoobject ab oder nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915769</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915769</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 14:25:47 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 14:38:48 GMT]]></title><description><![CDATA[<p>Du kannst nur den Konstruktor der direkten Basisklasse aufrufen. Bei dir also Coordpair</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915773</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915773</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 22 Jun 2010 14:38:48 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 15:04:49 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>vieleicht hilft dir das:</p>
<pre><code class="language-cpp">// call contructor  explizied without memory allocate (placement new)
new ( this ) T ();
</code></pre>
<p>Wobei T der name der Klasse ist.</p>
<p>Gruß Frank</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915792</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 22 Jun 2010 15:04:49 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 15:14:55 GMT]]></title><description><![CDATA[<p>Frank Erdorf schrieb:</p>
<blockquote>
<p>Hallo,vieleicht hilft dir das:</p>
<pre><code class="language-cpp">// call contructor  explizied without memory allocate (placement new)
new ( this ) T ();
</code></pre>
<p>Wobei T der name der Klasse ist.</p>
<p>Gruß Frank</p>
</blockquote>
<p>Danke.</p>
<p>Vielleicht kann mal einer sagen ob das funktioniert?<br />
Ich habe es im Moment schon alles umgeschrieben. Wenn es funktionieren sollte, werde ich es nätürlich ändern. Bin mal gespannt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915799</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915799</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 15:14:55 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 15:45:28 GMT]]></title><description><![CDATA[<p>Frank Erdorf schrieb:</p>
<blockquote>
<p>vieleicht hilft dir das:</p>
<pre><code class="language-cpp">// call contructor  explizied without memory allocate (placement new)
new ( this ) T ();
</code></pre>
</blockquote>
<p>Placement New hat nichts mit dem Weiterreichen von Konstruktoren zu tun, sondern mit der Konstruktion von Objekten in uninitialisiertem Speicher. Es innerhalb eines Konstruktors auf das eigene Objekt anzuwenden führt zu undefiniertem Verhalten, weil das Objekt zwei Mal konstruiert wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915825</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915825</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 22 Jun 2010 15:45:28 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 17:12:46 GMT]]></title><description><![CDATA[<p>Dann hat sich das ganze erledigt.<br />
Danke an die Antwortenden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915874</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915874</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 17:12:46 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 18:12:38 GMT]]></title><description><![CDATA[<p>theta schrieb:</p>
<blockquote>
<blockquote>
<p>VS2010 hat doch den diesen Standard?!</p>
</blockquote>
<p>Nein hat es nicht. TR1 ist zum Teil schon implementiert (natürlich nur Library Dinge).</p>
</blockquote>
<p>Beide nicht ganz richtig, VS2010 setzt durchaus schon kleine Teile vom C++0x um, aber bei weiten nicht vollständig (Beispiel: Schlüsselwort auto).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915925</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915925</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Tue, 22 Jun 2010 18:12:38 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 18:36:30 GMT]]></title><description><![CDATA[<p>Wie siehts mit GCC aus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915950</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915950</guid><dc:creator><![CDATA[darkfate]]></dc:creator><pubDate>Tue, 22 Jun 2010 18:36:30 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 18:45:57 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Wie siehts mit GCC aus?</p>
</blockquote>
<p>Google nach &quot;gcc c++0x&quot; gibt dir ziemlich genau das<br />
<a href="http://gcc.gnu.org/projects/cxx0x.html" rel="nofollow">http://gcc.gnu.org/projects/cxx0x.html</a><br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915957</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Tue, 22 Jun 2010 18:45:57 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] Konstruktor aus dem Konstruktor aufrufen on Tue, 22 Jun 2010 18:47:22 GMT]]></title><description><![CDATA[<p>darkfate schrieb:</p>
<blockquote>
<p>Wie siehts mit GCC aus?</p>
</blockquote>
<p>use the fucking google<br />
Siehe <a href="http://gcc.gnu.org/projects/cxx0x.html" rel="nofollow">http://gcc.gnu.org/projects/cxx0x.html</a> unter &quot;delegating constructors&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1915958</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1915958</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Tue, 22 Jun 2010 18:47:22 GMT</pubDate></item></channel></rss>