<?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[Klassen in Klassen?? UNMOEGLICH?]]></title><description><![CDATA[<p>Moin,</p>
<p>sitze hier an nem ziemlichen Problem, was mir C++ immer wieder auferlegt. Ich mach grad nen fenster mit ner GUI. Da müssen in eine Klasse ne ganze Menge anderer Klassen rein.</p>
<p>Das Problem: Bestimmte Klassen MUSS ich mit einem sinnvollen Konstruktor aufrufen, z.b.:</p>
<pre><code class="language-cpp">class A {
 string str(&quot;hi&quot;);
}
</code></pre>
<p>Dies GEHT NICHT. Compiler sagt zu der 2ten Zeile:<br />
error: expected identifier before string constant<br />
error: expected ‘,’ or ‘...’ before string constant</p>
<p>Ist eigtl. auch logisch, man kann ja in einer Klasse nur definieren, nicht deklarieren...</p>
<p>ABER:</p>
<pre><code class="language-cpp">class A {
 string str;
}
</code></pre>
<p>Das GEHT! Warum??? Eine Deklaration kann das nicht sein, scheinbar so nen indirekter Konstruktor oder ein satic member? <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>Meine Frage: Kann ich den String im Objekt definieren, aber die Instanz des Strings erst später erstellen?? (Bitte keine Pointer Lösungen <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>
<p>Bitte helft mir.<br />
Thnx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/197622/klassen-in-klassen-unmoeglich</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 09:29:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/197622.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Nov 2007 20:37:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:37:00 GMT]]></title><description><![CDATA[<p>Moin,</p>
<p>sitze hier an nem ziemlichen Problem, was mir C++ immer wieder auferlegt. Ich mach grad nen fenster mit ner GUI. Da müssen in eine Klasse ne ganze Menge anderer Klassen rein.</p>
<p>Das Problem: Bestimmte Klassen MUSS ich mit einem sinnvollen Konstruktor aufrufen, z.b.:</p>
<pre><code class="language-cpp">class A {
 string str(&quot;hi&quot;);
}
</code></pre>
<p>Dies GEHT NICHT. Compiler sagt zu der 2ten Zeile:<br />
error: expected identifier before string constant<br />
error: expected ‘,’ or ‘...’ before string constant</p>
<p>Ist eigtl. auch logisch, man kann ja in einer Klasse nur definieren, nicht deklarieren...</p>
<p>ABER:</p>
<pre><code class="language-cpp">class A {
 string str;
}
</code></pre>
<p>Das GEHT! Warum??? Eine Deklaration kann das nicht sein, scheinbar so nen indirekter Konstruktor oder ein satic member? <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>Meine Frage: Kann ich den String im Objekt definieren, aber die Instanz des Strings erst später erstellen?? (Bitte keine Pointer Lösungen <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>
<p>Bitte helft mir.<br />
Thnx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402109</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402109</guid><dc:creator><![CDATA[voidpointer]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:37:00 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:43:16 GMT]]></title><description><![CDATA[<p>Das Initialisieren der Klassenelemente musst du im Konstruktor erledigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402112</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402112</guid><dc:creator><![CDATA[Nanyuki]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:43:16 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:45:45 GMT]]></title><description><![CDATA[<p>aber wie rufe ich den kostruktor dieses strings auf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402113</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402113</guid><dc:creator><![CDATA[voidpointer]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:45:45 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:48:03 GMT]]></title><description><![CDATA[<p>Nö, wenn du es im Konstruktor machst, wird der String zweimal konstruiert. Nutze stattdessen ne Initialisierungsliste:</p>
<pre><code class="language-cpp">class A
{
    string str;
public:
    A() : str(&quot;hi&quot;) {}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1402114</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402114</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:48:03 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:57:16 GMT]]></title><description><![CDATA[<p>WOW! Das is großartig! Danke <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>Könnt ihr mir bitte trotzdem noch schnell erklären, was</p>
<pre><code class="language-cpp">string str;
</code></pre>
<p>macht?</p>
<p>Sagt das dem Compiler: Definiere einen String, und wenn in der Initialisierungsliste kein Konstruktor angegeben wurde, dann rufe den Standardkonstruktor direkt bei der Konstruktion von A auf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402122</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402122</guid><dc:creator><![CDATA[voidpointer]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:57:16 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 20:59:37 GMT]]></title><description><![CDATA[<p>Genau das.</p>
<p>Aber schrei doch nicht immer so <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/1402125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402125</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Mon, 12 Nov 2007 20:59:37 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen?? UNMOEGLICH? on Mon, 12 Nov 2007 21:04:41 GMT]]></title><description><![CDATA[<p>Bin ja nur glücklich, das Prob hat mich jetzt schon nen paar Monate genervt...<br />
Thnx &amp; Greetz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1402129</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1402129</guid><dc:creator><![CDATA[voidpointer]]></dc:creator><pubDate>Mon, 12 Nov 2007 21:04:41 GMT</pubDate></item></channel></rss>