<?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 lösche ich eine Klasse?]]></title><description><![CDATA[<p>Hallo jungs und mädels.</p>
<p>Ich habe ein basisprogramm für den Umgang mit Klassen erstellt.</p>
<p>Nun scheitert es beim löschen eines Datensatzes. Vielleicht wisst ihr ja mehr.</p>
<p>Hier ein Bild vorab:<br />
<a href="http://www.info-elite.de/crime/form.jpg" rel="nofollow">http://www.info-elite.de/crime/form.jpg</a></p>
<p>Nun zum Programm.</p>
<p>Hier mal mein Zeigen Button</p>
<pre><code class="language-cpp">kettenglied *letzter;

     MemoAusgabe-&gt;Lines-&gt;Clear();

     letzter = erster;

while (letzter-&gt;hole_next() != NULL)

      {

      letzter = letzter-&gt;hole_next();

      MemoAusgabe-&gt;Lines-&gt;Add(letzter-&gt;hole_vorname());
      MemoAusgabe-&gt;Lines-&gt;Add(letzter-&gt;hole_name());
      }

      return;

      }
</code></pre>
<p>Kann ich diesen nicht zu einem Löschen Button umformen?<br />
Ich weiß auch das man mit <strong>delete</strong> arbeiten muss, aber nicht wie man es genau einbindet.<br />
Ich möchte immer jeweils das &quot;AKTUELLE&quot; Kettenglied, sagen wir den Aktuellen Datensatz löschen.<br />
Wenn ich Vorname Nachname, Vorname1 Nachname1 habe und mit den Pfeilen vor oder zurück<br />
gehe möchte ich jenachdem auf welchen Datensatz ich gerade zeige diesen löschen.</p>
<pre><code class="language-cpp">delete (letzter);
</code></pre>
<p>klappt zum beispiel nicht und und und.</p>
<p>Hoffe ihr könnt mir helfen.</p>
<p>Gruß<br />
David</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/176980/wie-lösche-ich-eine-klasse</link><generator>RSS for Node</generator><lastBuildDate>Sat, 19 Sep 2026 19:51:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/176980.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 26 Mar 2007 23:23:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Mon, 26 Mar 2007 23:23:22 GMT]]></title><description><![CDATA[<p>Hallo jungs und mädels.</p>
<p>Ich habe ein basisprogramm für den Umgang mit Klassen erstellt.</p>
<p>Nun scheitert es beim löschen eines Datensatzes. Vielleicht wisst ihr ja mehr.</p>
<p>Hier ein Bild vorab:<br />
<a href="http://www.info-elite.de/crime/form.jpg" rel="nofollow">http://www.info-elite.de/crime/form.jpg</a></p>
<p>Nun zum Programm.</p>
<p>Hier mal mein Zeigen Button</p>
<pre><code class="language-cpp">kettenglied *letzter;

     MemoAusgabe-&gt;Lines-&gt;Clear();

     letzter = erster;

while (letzter-&gt;hole_next() != NULL)

      {

      letzter = letzter-&gt;hole_next();

      MemoAusgabe-&gt;Lines-&gt;Add(letzter-&gt;hole_vorname());
      MemoAusgabe-&gt;Lines-&gt;Add(letzter-&gt;hole_name());
      }

      return;

      }
</code></pre>
<p>Kann ich diesen nicht zu einem Löschen Button umformen?<br />
Ich weiß auch das man mit <strong>delete</strong> arbeiten muss, aber nicht wie man es genau einbindet.<br />
Ich möchte immer jeweils das &quot;AKTUELLE&quot; Kettenglied, sagen wir den Aktuellen Datensatz löschen.<br />
Wenn ich Vorname Nachname, Vorname1 Nachname1 habe und mit den Pfeilen vor oder zurück<br />
gehe möchte ich jenachdem auf welchen Datensatz ich gerade zeige diesen löschen.</p>
<pre><code class="language-cpp">delete (letzter);
</code></pre>
<p>klappt zum beispiel nicht und und und.</p>
<p>Hoffe ihr könnt mir helfen.</p>
<p>Gruß<br />
David</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253442</guid><dc:creator><![CDATA[David_]]></dc:creator><pubDate>Mon, 26 Mar 2007 23:23:22 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Mon, 26 Mar 2007 23:46:46 GMT]]></title><description><![CDATA[<p>Verstehe ich das jetzt richig, dass letzter ein Zeiger ist und du mit</p>
<p>letzter = new blabla;</p>
<p>irgendwo im Programm Speicher reservierst? (Oder zumindest do Speicher auf dem Heap reservierst und dann letzter auf das zu löschende Element zeigen lässt?)</p>
<p>Wenn dem nämlich so ist, müsstest du das auch mit</p>
<p>delete letzer;</p>
<p>freigeben können oder stehe ich jetzt auf dem Schlauch?</p>
<p>Edit: Also das Opfer von delete muss natürlich auf dem Heap liegen (new) und nicht auf dem Stack (wenn ich mich nicht völlig irre).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253444</guid><dc:creator><![CDATA[Sinthoras]]></dc:creator><pubDate>Mon, 26 Mar 2007 23:46:46 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 06:20:54 GMT]]></title><description><![CDATA[<p>ich habe es jetzt so gelöst:</p>
<pre><code class="language-cpp">public:
int del();
</code></pre>
<p>Methode</p>
<pre><code class="language-cpp">int kettenglied::del(){  
kettenglied * temp = this-&gt;next;  

kettenglied * temp2 = this-&gt;back;

if (this-&gt;next == NULL){  
        temp2-&gt;next = NULL;  
        return 0;  
}  

if (this-&gt;back == NULL){  
        temp-&gt;back = NULL;
        return 0 ;
}
delete this;
temp-&gt;back = temp2;
temp2-&gt;next = temp;  

return 0;  

}
</code></pre>
<p>Löschen Button</p>
<pre><code class="language-cpp">aktuell-&gt;del();
return;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1253487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253487</guid><dc:creator><![CDATA[David_]]></dc:creator><pubDate>Tue, 27 Mar 2007 06:20:54 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 06:23:31 GMT]]></title><description><![CDATA[<p>Hmm, das sieht aber verdammt nach std::list aus. Hat das einen Grund, dass du die nicht nutzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253488</guid><dc:creator><![CDATA[Shinja]]></dc:creator><pubDate>Tue, 27 Mar 2007 06:23:31 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 06:54:52 GMT]]></title><description><![CDATA[<p>David_ schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int kettenglied::del(){  
...
delete this;
...
</code></pre>
</blockquote>
<p>Also DAS sollte doch wohl immer schieflaufen, oder ?<br />
IIRC kann ein Objekt keinen &quot;Selbstmord begehen&quot;....</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253503</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 Mar 2007 06:54:52 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 07:00:06 GMT]]></title><description><![CDATA[<p>Das geht schon. Man darf nur nach dem delete nicht mehr auf irgendwelche Member der Klasse zugreifen. Ich finde das nur irgendwie unschön. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1253505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253505</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 27 Mar 2007 07:00:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 07:02:30 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/22930">@David</a>: Hast du schonmal etwas von &quot;Destruktoren&quot; gehört?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253507</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 27 Mar 2007 07:02:30 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 07:09:07 GMT]]></title><description><![CDATA[<p>Braunstein schrieb:</p>
<blockquote>
<p>...Ich finde das nur irgendwie unschön. <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>
</blockquote>
<p>Seeeeehr diplomatisch ausgedrückt. <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>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253512</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 Mar 2007 07:09:07 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 07:17:03 GMT]]></title><description><![CDATA[<p>David_ schrieb:</p>
<blockquote>
<p>...</p>
</blockquote>
<p>Mir scheint, Du hast da noch einen Denk-/Designfehler drin: Du hast zwei eigene &quot;Einheiten&quot;: Die &quot;Kettenglieder&quot; und die &quot;Kette als Ganzes&quot;.<br />
Es ist nicht die Aufgabe eines Kettengliedes, sich zu löschen oder zu erzeugen, sondern einfach nur &quot;da zu sein&quot;. Die &quot;Kette als Ganzes&quot; ist für die Verwaltung der einzelnen Glieder zuständig ... sie erzeugt, löscht, hängt um, gibt aus, .... .<br />
Zumindestens würde ich das so implementieren (also 2 Klassen).<br />
Noch eher: Ich würde mit eine std::list&lt;FachDaten&gt; hernehmen, die das alles für mich macht (inkl. der previous-/next-Verbindungen).</p>
<p>Gruß,</p>
<p>Simon2.</p>
<p>P.S.: Du solltest Deinen Threadtitel mal ändern, denn &quot;Klassen löschen&quot; macht man mit der IDE auf der Festplatte.... und das ist wohl nicht das, was Du willst. Du möchtest &quot;Objekte aus einer Liste entfernen&quot;. <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/1253517</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253517</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 Mar 2007 07:17:03 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 09:06:46 GMT]]></title><description><![CDATA[<p>Also soweit ich weiss, muss man nicht zwingend eine Methode zum loeschen einer Klasse spendieren. Man kann auch einfach die Klasse allokieren:</p>
<pre><code class="language-cpp">Class *Object = new Class;
</code></pre>
<p>und spaeter, wenn sie nicht mehr gebraucht wird mit:</p>
<pre><code class="language-cpp">delete Object;
</code></pre>
<p>wieder loeschen.</p>
<p>Der Zugriff erfolgt dann ueber:</p>
<pre><code class="language-cpp">Object-&gt;Method();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1253631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253631</guid><dc:creator><![CDATA[LMwoot]]></dc:creator><pubDate>Tue, 27 Mar 2007 09:06:46 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 09:13:31 GMT]]></title><description><![CDATA[<p>LMwoot schrieb:</p>
<blockquote>
<p>Also soweit ich weiss, muss man nicht zwingend eine Methode zum loeschen einer Klasse spendieren. ...</p>
</blockquote>
<p>Ich würde sogar sagen: Eine solche Funktion bringt mehr Probleme als Vorteile (gaaanz spezielle Designpatterns mal ausgenommen).</p>
<p>Was Du beschreibst, ist richtig ... und zeigt mE auch den richtigen Weg: Von Außen wird das Objekt erzeugt (mit new), genutzt und gelöscht (delete)...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1253637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1253637</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 Mar 2007 09:13:31 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 17:40:06 GMT]]></title><description><![CDATA[<p>Ihr mögt alle recht haben <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>Nur meine version funktioniert einwandfrei *duck*</p>
<p>Für eure genannten beispiele bin ich wohl noch nicht weit genug in der materie der Sprache c++ <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>Gruß<br />
David</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1254056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1254056</guid><dc:creator><![CDATA[David_]]></dc:creator><pubDate>Tue, 27 Mar 2007 17:40:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Tue, 27 Mar 2007 17:46:51 GMT]]></title><description><![CDATA[<p>Die funktioniert genau solange einwandfrei, bis der erste Fehler kommt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1254060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1254060</guid><dc:creator><![CDATA[LMwoot]]></dc:creator><pubDate>Tue, 27 Mar 2007 17:46:51 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Wed, 28 Mar 2007 06:17:32 GMT]]></title><description><![CDATA[<p>David_ schrieb:</p>
<blockquote>
<p>Ihr mögt alle recht haben <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>Nur meine version funktioniert einwandfrei *duck*...</p>
</blockquote>
<p>Was war denn dann Deine Frage ? <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>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1254267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1254267</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 28 Mar 2007 06:17:32 GMT</pubDate></item><item><title><![CDATA[Reply to Wie lösche ich eine Klasse? on Wed, 28 Mar 2007 06:37:20 GMT]]></title><description><![CDATA[<p>David_ schrieb:</p>
<blockquote>
<p>Ihr mögt alle recht haben <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>Nur meine version funktioniert einwandfrei *duck*</p>
<p>Für eure genannten beispiele bin ich wohl noch nicht weit genug in der materie der Sprache c++ <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>Gruß<br />
David</p>
</blockquote>
<p>Wenn Du es nicht schaffst diese Einstellung zu überwinden wirst Du imemr nur ein mittelmässiger Programmierer bleiben.</p>
<p>Du hast (richtig) erkannt das Du etwas nicht begriffen hast (delete sache). Die Leute hier haben Dir einige gute Denkansätze gegeben. Der richtige Weg wäre es jetzt sich hinzusetzen und diese Denkansätze solange zu bearbeiten bis Du begreifst was damit gemeint ist. der absolut falsche Weg ist es mit solche Argumenten andere ideen zu blocken und mit der eigenen (schlechten) weiterzumachen, nur &quot;weil sie doch funktioniert&quot;. dabei behaupte ich jetzt mal ganz frech das Dir einfach das tiefergehende Verständnis fehlt um tatsächlich beurteilen zu können ob Deine variante tatsächliche &quot;einwandtfrei funktioniert&quot; oder nicht in Wirklichkeit einfach nur &quot;zufällig funktioniert&quot;.</p>
<p>Allzu viele Programmierer geben sich leider mit letzterem Zufrieden...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1254276</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1254276</guid><dc:creator><![CDATA[iiiiii]]></dc:creator><pubDate>Wed, 28 Mar 2007 06:37:20 GMT</pubDate></item></channel></rss>