<?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[Konstruktoren probleme]]></title><description><![CDATA[<p>hallo,<br />
ich beschäftige mich gerade mit Konstruktoren und habe sehr große Probleme damit. Folgendes Problem habe ich: ich will eine klasse Pfad die einen weg darstellt. Der Weg sollt aus beliebig vielen Wegpunkten bestehen. Die Punkte sollen nur aus x und y Koordinaten bestehen. Die Klasse Punkt hab ich mal so definiert:</p>
<pre><code>class Punkt :

{
	int x; // X-Koordinate
	int y; // Y-Koordinate
public:
	Punkt(int x = 0, int y = 0){ x = x; y = y; }

	void print(){ cout &lt;&lt; ' ( ' &lt;&lt; x &lt;&lt; ' , ' &lt;&lt; y &lt;&lt; ' ) '; }

};
</code></pre>
<p>Nun stellt sich mir aber die Frage wie der Konstruktor, der die<br />
Anzahl der Punkte als Parameter hat aussehen soll?<br />
kann mir da jemand einen Tipp geben?</p>
<p>Außerdem verstehe ich nicht wie eine Methode mit der man die Wegpunkte der Reihe nach in den Pfad einfügen kann realisiert werden könnte <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /><br />
Konstruktoren sind so schlecht beschrieben in meinem Buch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":O"
      alt="😮"
    /><br />
Vielen Dank schon mal an alle die mir Konstruktoren irgendwie verständlicher machen können <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/332511/konstruktoren-probleme</link><generator>RSS for Node</generator><lastBuildDate>Mon, 27 Apr 2026 16:36:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/332511.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 05 May 2015 16:33:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 05 May 2015 16:49:41 GMT]]></title><description><![CDATA[<p>hallo,<br />
ich beschäftige mich gerade mit Konstruktoren und habe sehr große Probleme damit. Folgendes Problem habe ich: ich will eine klasse Pfad die einen weg darstellt. Der Weg sollt aus beliebig vielen Wegpunkten bestehen. Die Punkte sollen nur aus x und y Koordinaten bestehen. Die Klasse Punkt hab ich mal so definiert:</p>
<pre><code>class Punkt :

{
	int x; // X-Koordinate
	int y; // Y-Koordinate
public:
	Punkt(int x = 0, int y = 0){ x = x; y = y; }

	void print(){ cout &lt;&lt; ' ( ' &lt;&lt; x &lt;&lt; ' , ' &lt;&lt; y &lt;&lt; ' ) '; }

};
</code></pre>
<p>Nun stellt sich mir aber die Frage wie der Konstruktor, der die<br />
Anzahl der Punkte als Parameter hat aussehen soll?<br />
kann mir da jemand einen Tipp geben?</p>
<p>Außerdem verstehe ich nicht wie eine Methode mit der man die Wegpunkte der Reihe nach in den Pfad einfügen kann realisiert werden könnte <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /><br />
Konstruktoren sind so schlecht beschrieben in meinem Buch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":O"
      alt="😮"
    /><br />
Vielen Dank schon mal an alle die mir Konstruktoren irgendwie verständlicher machen können <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452612</guid><dc:creator><![CDATA[andymaxi]]></dc:creator><pubDate>Tue, 05 May 2015 16:49:41 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 05 May 2015 16:45:58 GMT]]></title><description><![CDATA[<p>Ein Punkt ist doch kein Pfad! Warum leitest du davon ab?</p>
<p>Vielleicht solltest du dir ein besseres Buch kaufen. Die Suchfunktion liefert dir sicher Hinweise.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452614</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452614</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Tue, 05 May 2015 16:45:58 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 05 May 2015 16:49:23 GMT]]></title><description><![CDATA[<p>&quot;public Pfad&quot; upps das sollte da nicht hin <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
<p>ich durchsuche das Forum gerade <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452615</guid><dc:creator><![CDATA[andymaxi]]></dc:creator><pubDate>Tue, 05 May 2015 16:49:23 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 05 May 2015 17:13:42 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">{ x = x; y = y; }
</code></pre>
<p>das macht sicherlich nicht das richtige. Such mal nach &quot;Initialisierungsliste&quot;...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452617</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452617</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Tue, 05 May 2015 17:13:42 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Wed, 06 May 2015 07:35:02 GMT]]></title><description><![CDATA[<p>Kleine Bitte: Wenn man Code in das Forum kopiert, sollte man Tabulatoren durch Leerzeichen ersetzten.</p>
<pre><code>class Punkt : // &lt;-- Erster Fehler der Doppelpunkt am Ende
{
    int x; // X-Koordinate
    int y; // Y-Koordinate
public:
    Punkt(int x = 0, int y = 0) // &lt;-- Hier definierst du lokale Variablen
    {
        x = x; // &lt;-- Selbstzuweisung (lokale V. an lokale V.)
        y = y; //     Lokale Variablen haben Vorrang vor Membern.
    }

    // Entweder (auch besser)
    Punkt(int x = 0, int y = 0)
    : x(x), y(y) // Hier steht der Member vor der Klammer, in der Klammer der
    {}           // Initialwert (lokale Variable) [Initialisierungsliste]

    // Oder
    Punkt(int x = 0, int y = 0)
    {
        this-&gt;x = x; // Mittels this-Zeiger wird explizit die Membervariable
        this-&gt;y = y; // angesprochen. Im Gegensatz zur Initialisierungsliste
        // handelt es sich hierbei aber nicht um eine Initialisierung, sondern
        // eine nachträgliche Zuweisung (Bei Objekten wäre schon vorher der
        // Standardkonstruktor aufgerufen wurden, und nun zusätzlich der
        // Zuweisungsoperator)
    }
//...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2452667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452667</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 06 May 2015 07:35:02 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Wed, 06 May 2015 16:16:34 GMT]]></title><description><![CDATA[<p>asc schrieb:</p>
<blockquote>
<p>Kleine Bitte: Wenn man Code in das Forum kopiert, sollte man Tabulatoren durch Leerzeichen ersetzten.</p>
</blockquote>
<p>Bloss nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452727</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Wed, 06 May 2015 16:16:34 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 12 May 2015 13:24:31 GMT]]></title><description><![CDATA[<p>Danke asc für deine ausführliche Erklärung!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453309</guid><dc:creator><![CDATA[andymaxi]]></dc:creator><pubDate>Tue, 12 May 2015 13:24:31 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 12 May 2015 14:19:58 GMT]]></title><description><![CDATA[<p>also ich komme schon wieder nicht weiter. Ich hoffe mir kann jemand einen Lösungsansatz vorschlagen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> ich schreibe zu Anfang nochmal meine gesamte Aufgabenstellen:</p>
<p>Definieren Sie eine Klasse mit Namen Pfad, die einen Weg darstellt. Ein Weg besteht aus einer beliebigen Anzahl von Punkten(die klasse Punkt haben wir jetzt schon <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="🙂"
    /> ), die durch (x,y)-Koordinaten repräsentiert werden.</p>
<p>Vorgehen soll ich wie folgt:</p>
<p><strong>Beschreiben Sie die Klassen in C++. Defnieren Sie zunächst einen Konstruktor, der die Anzahl der Punkte als Parameter besitzt.</strong></p>
<p>dazu habe ich ganz einfach nur einen Konstruktor mit einem Parameter gemacht:<br />
Kritik bitte sofort äußern <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<pre><code>class Pfad
{
	int anzahlpunkte;

public:
	Pfad(int a = 0){ anzahlpunkte = a; }

};
</code></pre>
<p><strong>Schreiben Sie außerdem eine weitere Methode insertKoord(Punkt&amp; p), mit der Sie die Wegpunkte der Reihe nach in den Pfad einfügen können,</strong></p>
<p>hier frage ich mich erstmal in welche Datei diese Funktion rein muss. ich tippe auf pfad.h außerdem komme ich mit dem &quot;Punkt&amp; p&quot; Copykonstruktor nicht ganz klar und frage mich auch wie das mit der Reihe nach umsetzbar sein soll. Die einzige Lösung die mir einfällt wäre einfach ein Stack indem die punkte sind? Bitte helft mir dabei <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><strong>sowie eine Methode printKoord(int i), mit der Sie den i-ten Wegpunkt auf Konsole ausgeben können.</strong></p>
<p>Über den wert den i hat gebe ich den entsprechenden Wegpunkt aus, dass ist mir klar aber wie greife auf das zu?</p>
<p>**<br />
Schreiben Sie ein kleines Hauptprogramm, mit dem Sie Ihre Klassen testen können.**</p>
<p>Das sollte zum Schluss kein Problem mehr sein <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Hier noch meine Punkt.h</p>
<p>Punkt.h:</p>
<pre><code>class Punkt

{
	int x; // X-Koordinate
	int y; // Y-Koordinate
public:
	Punkt(int x = 0, int y = 0)
		: x(x), y(y)
	{}

	void print(){ cout &lt;&lt; ' ( ' &lt;&lt; x &lt;&lt; ' , ' &lt;&lt; y &lt;&lt; ' ) '&lt;&lt; endl; }

};
</code></pre>
<p>Wenn noch jemand fragen hat ich beantworte alle Fragen so schnell wie es geht!<br />
vielen dank für alle die mir versuchen zu helfen!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453317</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453317</guid><dc:creator><![CDATA[andymaxi]]></dc:creator><pubDate>Tue, 12 May 2015 14:19:58 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 12 May 2015 14:42:21 GMT]]></title><description><![CDATA[<p>Der einfachste Weg ist es, einen <code>std::vector</code> oder <code>std::array</code> (falls C++11) zu benutzen, der deine Punkte enthält:</p>
<pre><code>#include &lt;vector&gt;

#include &quot;Punkt.h&quot;

class Pfad
{
   std::vector&lt;Punkt&gt; Punkte_;

public:
   Pfad( unsigned int Length ) :
      Punkte_( Length )
   {
   }
};
</code></pre>
<p>Alles weitere kannst du der Doku zu vector/array entnehmen.</p>
<p>Edit:<br />
<code>std::vector</code> mit fester Anzahl von Wegpunkten ist mit dieser Aufgabenstellung Käse. <code>std::vector</code> wächst bei Bedarf selbständig mit und braucht keine maximale Wegpunktzahl.<br />
Ich denke, dein Lehrer/Prof will auf manuelle Speicherverwaltung (und all ihren Tücken) hinaus und wird <code>std::vector</code> wohl nicht akzeptieren. Oder er ist einer von den Leuten, die C mit Klassen für C++ halten.<br />
Wie gesagt, die sauberste Lösung ist <code>std::vector</code> , und wenn dein Lehrer/Prof das nicht sehen will musst du dich wohl selbst um die Speicherverwaltung kümmern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453319</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Tue, 12 May 2015 14:42:21 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 12 May 2015 14:39:53 GMT]]></title><description><![CDATA[<p>DocShoe schrieb:</p>
<blockquote>
<p>Der einfachste Weg ist es, einen <code>std::vector</code> oder <code>std::array</code> (falls C++11) zu benutzen, der deine Punkte enthält:</p>
</blockquote>
<p>Die Aufgabenstellung klingt für mich eher so, als wäre ein C-Array gefordert (Anzahl der Punkte dem Konstruktor übergeben).</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/32928">@andymaxi</a> was genau ist das für eine Aufgabe? Schule/Uni? Darfst du sowas wie std::vector benutzen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453320</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453320</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Tue, 12 May 2015 14:39:53 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktoren probleme on Tue, 12 May 2015 14:58:03 GMT]]></title><description><![CDATA[<p>ich denke auch dass hier ein Array gefordert ist. <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="😉"
    /><br />
das ist ne Aufgabenstellung von einer FH</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453321</guid><dc:creator><![CDATA[andymaxi]]></dc:creator><pubDate>Tue, 12 May 2015 14:58:03 GMT</pubDate></item></channel></rss>