<?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[Klasse als Element einer anderen Klasse?]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Beim meinem Problem gehts um folgedes: Ich würde gern eine Klasse als Element einer anderen Klasse verwenden. So, dass zum beispiel die Klasse Linie zwei Elemente V1 und V2 der Klasse Vektor enthält.</p>
<p>Dafür habe ich ersteinmal stumpf drauflosgeschrieben:</p>
<pre><code class="language-cpp">class Linie
{
private:
	Vektor P1;
	Vektor P2;
public:
	Linie()//das soll mein Konstruktor sein
	{
		P1.set_x 2;
		P2.set_x 3;
	}
	Vektor get_P1(void);//und damit soll man auf ein Element zugreifen können
}
</code></pre>
<p>Das geht nicht, weil der Compiler &quot;Vektor&quot; augenscheinlich nicht kennt. Also habe ich noch ein #include &quot;Vektor.h&quot; an den Anfang gestellt und trotzdem läuft es nicht. &quot;error C2011: 'Vektor' : 'class'-Typ-Neudefinition&quot;</p>
<p>Was mache ich falsch?</p>
<p>(und als Bonus: wenn ich nichts mir Vererbung mache, ist es dann okay, private statt protected zu benutzen?)</p>
<p>Gruß</p>
<p>Dr. Bernd</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/162260/klasse-als-element-einer-anderen-klasse</link><generator>RSS for Node</generator><lastBuildDate>Sat, 12 Sep 2026 03:11:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/162260.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 16 Oct 2006 20:19:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klasse als Element einer anderen Klasse? on Mon, 16 Oct 2006 20:19:02 GMT]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Beim meinem Problem gehts um folgedes: Ich würde gern eine Klasse als Element einer anderen Klasse verwenden. So, dass zum beispiel die Klasse Linie zwei Elemente V1 und V2 der Klasse Vektor enthält.</p>
<p>Dafür habe ich ersteinmal stumpf drauflosgeschrieben:</p>
<pre><code class="language-cpp">class Linie
{
private:
	Vektor P1;
	Vektor P2;
public:
	Linie()//das soll mein Konstruktor sein
	{
		P1.set_x 2;
		P2.set_x 3;
	}
	Vektor get_P1(void);//und damit soll man auf ein Element zugreifen können
}
</code></pre>
<p>Das geht nicht, weil der Compiler &quot;Vektor&quot; augenscheinlich nicht kennt. Also habe ich noch ein #include &quot;Vektor.h&quot; an den Anfang gestellt und trotzdem läuft es nicht. &quot;error C2011: 'Vektor' : 'class'-Typ-Neudefinition&quot;</p>
<p>Was mache ich falsch?</p>
<p>(und als Bonus: wenn ich nichts mir Vererbung mache, ist es dann okay, private statt protected zu benutzen?)</p>
<p>Gruß</p>
<p>Dr. Bernd</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1155948</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155948</guid><dc:creator><![CDATA[Dr. Bernd]]></dc:creator><pubDate>Mon, 16 Oct 2006 20:19:02 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse als Element einer anderen Klasse? on Mon, 16 Oct 2006 20:31:55 GMT]]></title><description><![CDATA[<p>Dr. Bernd schrieb:</p>
<blockquote>
<p>Was mache ich falsch?</p>
</blockquote>
<p><a href="https://www.google.de/search?&amp;q=include%20guards" rel="nofollow">Google: include guards</a></p>
<p>Dr. Bernd schrieb:</p>
<blockquote>
<p>(und als Bonus: wenn ich nichts mir Vererbung mache, ist es dann okay, private statt protected zu benutzen?)</p>
</blockquote>
<p>Es ist auch &quot;mi[t] Vererbung&quot; &quot;okay&quot; <em>private</em> zu benutzen. Aber wenn von <em>Linie</em> nicht geerbt wird/werden soll ist <em>private</em> das einzig sinnvolle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1155950</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155950</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Mon, 16 Oct 2006 20:31:55 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse als Element einer anderen Klasse? on Mon, 16 Oct 2006 20:59:12 GMT]]></title><description><![CDATA[<p>Hey, das ist genial! Danke danke danke!</p>
<p>Hab beides ausprobiert, #include-Guard und #pragma once, beides geht. <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="🙂"
    /><br />
Endlich funktioniert:</p>
<pre><code class="language-cpp">C.get_P1().get_x();
</code></pre>
<p>Gibts vielleicht noch einen Kniff, dass man auf die leeren Klammern verzichten kann oder muss ich mich dran gewöhnen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1155961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155961</guid><dc:creator><![CDATA[Dr. Bernd]]></dc:creator><pubDate>Mon, 16 Oct 2006 20:59:12 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse als Element einer anderen Klasse? on Tue, 17 Oct 2006 00:39:07 GMT]]></title><description><![CDATA[<p>Äh. Einer Vector oder Line Klasse würde ich einfach public Member verpassen. Ich sehen keinen Grund die Member private zu machen. Wenn du magst natürlich gerne, aber dann musst du auch die schnöden &quot;function-call&quot; Klammern tippseln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156001</guid><dc:creator><![CDATA[Plotzenhotz]]></dc:creator><pubDate>Tue, 17 Oct 2006 00:39:07 GMT</pubDate></item><item><title><![CDATA[Reply to Klasse als Element einer anderen Klasse? on Tue, 17 Oct 2006 09:30:41 GMT]]></title><description><![CDATA[<p>Hey, wunderbar. Macht Sinn. Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156127</guid><dc:creator><![CDATA[Dr. Bernd]]></dc:creator><pubDate>Tue, 17 Oct 2006 09:30:41 GMT</pubDate></item></channel></rss>