<?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[Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen?]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich möchte ein Objekt auf dem Stack erzeugen, welches innerhlab der private- oder public- Region einer Klasse deklariert wird.</p>
<p>Oder anders ausgedrückt ich brauche folgendes für den Stack (<strong>ohne</strong> new-operator und <strong>ohne</strong> malloc, calloc, ...):</p>
<pre><code>class X {
    public:
        X::X(int param);
        X::~X();
};

class Y {
    private:
        X* obj;
    public:
        Y::Y();
};

Y::Y() {
    obj = new X(100);
}
</code></pre>
<p>Hat da jemand eine Idee? - innerhalb von Funktionen und Methoden ist das ja kein Problem, da man einfach folgendes benutzen kann:</p>
<pre><code>void main() {
    X obj(100);
}
</code></pre>
<p>Das funktioniert im header leider nicht. Syntaktisch korrekt kann ich dort folgendes machen:</p>
<pre><code>class Y {
    private:
        X obj(int param);
    public:
        Y::Y();
};
</code></pre>
<p>Allerdings weiß ich nicht, wie ich im Konstruktor (oder einer anderen Stelle) der Klasse Y die Parameter des Konstruktors der Klasse X an diesen übergeben kann.</p>
<p>Ich hoffe, ihr könnt mir helfen.<br />
Vielen Dank schonmal,</p>
<p>Eight_ball</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/224822/wie-kann-ich-ein-objekt-ohne-standard-konstruktor-auf-dem-stack-innerhalb-einer-klasse-erzeugen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 02 Oct 2026 06:42:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/224822.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 15 Oct 2008 14:18:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:18:43 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich möchte ein Objekt auf dem Stack erzeugen, welches innerhlab der private- oder public- Region einer Klasse deklariert wird.</p>
<p>Oder anders ausgedrückt ich brauche folgendes für den Stack (<strong>ohne</strong> new-operator und <strong>ohne</strong> malloc, calloc, ...):</p>
<pre><code>class X {
    public:
        X::X(int param);
        X::~X();
};

class Y {
    private:
        X* obj;
    public:
        Y::Y();
};

Y::Y() {
    obj = new X(100);
}
</code></pre>
<p>Hat da jemand eine Idee? - innerhalb von Funktionen und Methoden ist das ja kein Problem, da man einfach folgendes benutzen kann:</p>
<pre><code>void main() {
    X obj(100);
}
</code></pre>
<p>Das funktioniert im header leider nicht. Syntaktisch korrekt kann ich dort folgendes machen:</p>
<pre><code>class Y {
    private:
        X obj(int param);
    public:
        Y::Y();
};
</code></pre>
<p>Allerdings weiß ich nicht, wie ich im Konstruktor (oder einer anderen Stelle) der Klasse Y die Parameter des Konstruktors der Klasse X an diesen übergeben kann.</p>
<p>Ich hoffe, ihr könnt mir helfen.<br />
Vielen Dank schonmal,</p>
<p>Eight_ball</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1599429</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599429</guid><dc:creator><![CDATA[Eight_ball]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:18:43 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:21:58 GMT]]></title><description><![CDATA[<p>Benutze die Initialisierer-Liste:</p>
<pre><code class="language-cpp">class X {
    public:
        X::X(int param);
        X::~X();
};

class Y {
    private:
        X obj; // kein Pointer
    public:
        Y::Y();
};

Y::Y() : x(10)  // Default-Wert
{
}

Y::Y(int param) : x(param) {
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1599432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599432</guid><dc:creator><![CDATA[Bulli]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:21:58 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:22:01 GMT]]></title><description><![CDATA[<p>Initialisierungsliste ist das Stichwort:</p>
<pre><code class="language-cpp">//irgendwo in der Klassen deklaration
X x;
//...
Y::Y():x(100){ }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1599433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599433</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:22:01 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:25:02 GMT]]></title><description><![CDATA[<p>Das heißt aber, dass ich die Parameter des Konstruktors, zusätzlich über Methoden zugänglich machen muss, um einen anderen Wert, als den Standardwert zu übermitteln?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1599436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599436</guid><dc:creator><![CDATA[Eight_ball]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:25:02 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:27:28 GMT]]></title><description><![CDATA[<p>Eight_ball schrieb:</p>
<blockquote>
<p>Das heißt aber, dass ich die Parameter des Konstruktors, zusätzlich über Methoden zugänglich machen muss, um einen anderen Wert, als den Standardwert zu übermitteln?</p>
</blockquote>
<p>Ich verstehe die Frage nicht. Wie man Werte übergeben kann, hat Bulli schon beschrieben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1599440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599440</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:27:28 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann ich ein Objekt ohne Standard-Konstruktor auf dem Stack innerhalb einer Klasse erzeugen? on Wed, 15 Oct 2008 14:28:58 GMT]]></title><description><![CDATA[<p>Ok, hab da was misinterpretiert, habs nun kapiert, vielen Dank!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1599441</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1599441</guid><dc:creator><![CDATA[Eight_ball]]></dc:creator><pubDate>Wed, 15 Oct 2008 14:28:58 GMT</pubDate></item></channel></rss>