<?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[std::list  Wie bekomme ich den zeiger zurück ?]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe eine Klasse Kopf , die eine Liste mit Positionen hat.</p>
<pre><code>class Kopf {

   public:
        std::list&lt;Position*&gt;   m_pobPosition;

};
</code></pre>
<p>Und dann habe ich eine andere Klasse- UnterKopf<br />
[code]<br />
class UnterKopf :public Kopf<br />
{</p>
<p>public:<br />
std::list&lt;UnterPosition*&gt; m_pobPosition;</p>
<p>};</p>
<p>Jetzt möchte ich den Zeiger , der auf diese Liste &gt;Position&gt; zeigt<br />
umbiegen . Er soll zeigen auf die Liste &lt;UnterPosition&gt;.</p>
<p>Mein Problem ist , ich weiß nicht wie ich den Zeiger , der auf die Liste &lt;Position&gt; zeigt zurückbekomme .</p>
<p>Danke.</p>
<p>LG, Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/202556/std-list-wie-bekomme-ich-den-zeiger-zurück</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 00:09:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/202556.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 12 Jan 2008 20:45:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sat, 12 Jan 2008 20:45:51 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe eine Klasse Kopf , die eine Liste mit Positionen hat.</p>
<pre><code>class Kopf {

   public:
        std::list&lt;Position*&gt;   m_pobPosition;

};
</code></pre>
<p>Und dann habe ich eine andere Klasse- UnterKopf<br />
[code]<br />
class UnterKopf :public Kopf<br />
{</p>
<p>public:<br />
std::list&lt;UnterPosition*&gt; m_pobPosition;</p>
<p>};</p>
<p>Jetzt möchte ich den Zeiger , der auf diese Liste &gt;Position&gt; zeigt<br />
umbiegen . Er soll zeigen auf die Liste &lt;UnterPosition&gt;.</p>
<p>Mein Problem ist , ich weiß nicht wie ich den Zeiger , der auf die Liste &lt;Position&gt; zeigt zurückbekomme .</p>
<p>Danke.</p>
<p>LG, Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435626</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Sat, 12 Jan 2008 20:45:51 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sat, 12 Jan 2008 20:59:16 GMT]]></title><description><![CDATA[<p>Rixa schrieb:</p>
<blockquote>
<p>Hallo,...</p>
</blockquote>
<p>Du solltest deine Frage nochmal so formulieren das man sie eindeutig verstehen kann.</p>
<p>Jetzt aber mehrere Anmerkungen vielleicht ist darin auch deine Frage beantwortet:<br />
a) Membervariablen sollte man nicht public deklarieren<br />
b) Du kannst keinen Container eines Types in einen eines anderen Types konvertieren, nur kopieren.<br />
c) Du kannst einen Zeiger auf eine Basisklasse in einen der entsprechenden Unterklasse mittels dynamic_cast konvertieren, sofern das Objekt dahinter tatsächlich einen damit kompatiblen Typ entspricht.<br />
d) Dir ist hoffentlich bewusst das du mit der definition der Liste in der abgeleiteten Klasse die gleichnamige in der Basisklasse überdeckst.<br />
e) Mit Polymorphie hast du dich hoffentlich schonmal beschäftigt. Du kannst in eine Liste mit Zeigern auf die Basisklasse auch Objekte der abgeleiteten speichern.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435631</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Sat, 12 Jan 2008 20:59:16 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sat, 12 Jan 2008 21:00:28 GMT]]></title><description><![CDATA[<p>meinst du zufällig...</p>
<pre><code class="language-cpp">std::list&lt;Position&gt; *   m_pobPosition;
//statt
std::list&lt;Position*&gt;   m_pobPosition;
</code></pre>
<p>wenn du m_pobPosition auf die liste mit den UnterPositionen zeigen lassen willst, das geht nicht.</p>
<p>vielleicht willst du auch etwas anderes und ich verstehe dich nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435632</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435632</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Sat, 12 Jan 2008 21:00:28 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 07:47:21 GMT]]></title><description><![CDATA[<p>Danke , für eure Antworten.</p>
<p>Ich versuch's nochmals.<br />
1 *<br />
Kopf ---- &gt; KopfItem &lt;---- pobPosition<br />
| |<br />
| |<br />
Unterkopf UnterkopfItem &lt;---- pobUnterposition</p>
<p>Ich habe eine Basisklasse : Kopf<br />
Diese Basisklasse hat eine Collection: pobPosition , die Objekte vom Typ KopfItem beinhaltet.</p>
<p>Dann habe ich eine Klasse Unterkopf , die hat eine Collection: pobUnterposition, duie Objekte der Klasse: UnterkopfItem beinhaltet.</p>
<p>Die Klasse: Unterkopf ist von der Klasse: Kopf abgeleitet. Die Klasse UnterkopfItem ist von der Klasse : KopfItem abgeleitet.</p>
<p>Ich möchte , ( ich denke , dass das geht ) den Zeiger , mit dem der Kopf auf seine Collection :pobPositionen zeigt , holen und ihn auf die Collection<br />
pobUnterposition zeigen lassen.</p>
<p>Viele Grüße, Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435730</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435730</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Sun, 13 Jan 2008 07:47:21 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 07:53:00 GMT]]></title><description><![CDATA[<p>leider ,<br />
ist meine Zeichnung zusammengeschoben worden . Ich versuch' nochmal:</p>
<p>1 *<br />
Kopf ---- &gt; KopfItem Das ist die: &lt;---- pobPosition<br />
| | Diese Strichle bedeutetn : Ableitung<br />
| 1 * |<br />
Unterkopf ---- &gt; UnterkopfItem Das ist die: &lt;---- pobUnterposition</p>
<p>Ich habe also 2 Klassen:<br />
Unterkopf ist abgeleitet vom Kopf<br />
Unterkopitem vom Kopfitem.</p>
<p>Kopf hat eine Collection pobPosition , die Objekte der Klasse: KopfItem beinhaltet.<br />
Unterkopf hat eine Collection pobUnterposition , die Objekte der Klasse: UnterkopfItem beinhaltet.</p>
<p>Danke.</p>
<p>Grüße, Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435732</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Sun, 13 Jan 2008 07:53:00 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 08:55:43 GMT]]></title><description><![CDATA[<pre><code>1      *  
  Kopf    ---- &gt;   KopfItem            &lt;---- pobPosition
    |                 |
    |                 |  
  Unterkopf        UnterkopfItem       &lt;---- pobUnterposition
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1435743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435743</guid><dc:creator><![CDATA[codetagger]]></dc:creator><pubDate>Sun, 13 Jan 2008 08:55:43 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 09:20:07 GMT]]></title><description><![CDATA[<p>Rixa schrieb:</p>
<blockquote>
<p>Ich möchte , ( ich denke , dass das geht ) den Zeiger , mit dem der Kopf auf seine Collection :pobPositionen zeigt , holen und ihn auf die Collection<br />
pobUnterposition zeigen lassen.</p>
</blockquote>
<p>Welcher Zeiger denn?<br />
Namen sind Schall und Ruach und lenken in diesem Falle nur ab, ich versuch noch mal, das Ganze zu ordnen:</p>
<pre><code class="language-cpp">class ItemA { /* ... */ };
class ItemB : public ItemA { /* ... */ };

class A { public: std::list&lt;ItemA*&gt; m_a; };
class B : public A { public: std::list&lt;ItemB*&gt; m_b; };
</code></pre>
<p>was nun? welches Problem soll glöst werden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435745</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 13 Jan 2008 09:20:07 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 10:53:42 GMT]]></title><description><![CDATA[<p>Danke codetagger !<br />
So wollte ich es dartsellen !</p>
<p>Hallo Camper,</p>
<p>Ich möchte jetzt dass die Klasse A auf die Elemente der Collection<br />
std::list&lt;ItemB*&gt; m_b zugreifen kann.</p>
<p>Normaleweise kann sie das nicht , aber wenn ich der Klasse A sagen kann ,<br />
du hast jetzt die Collection m_b und nicht m_a dann müsste es gehen .<br />
Aber wie ?</p>
<p>Viele Grüße ,Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435785</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Sun, 13 Jan 2008 10:53:42 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 11:12:22 GMT]]></title><description><![CDATA[<p>Rixa schrieb:</p>
<blockquote>
<p>Ich möchte jetzt dass die Klasse A auf die Elemente der Collection<br />
std::list&lt;ItemB*&gt; m_b zugreifen kann.</p>
</blockquote>
<p>m_b von welchem Objekt vom Typ B?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435803</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 13 Jan 2008 11:12:22 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 12:23:29 GMT]]></title><description><![CDATA[<p>Hallo camper,</p>
<blockquote>
<p>m_b von welchem Objekt vom Typ B?</p>
</blockquote>
<p>ja. Ich benutze deine Dekl. die m_b Liste hängt am Objkt der Klasse B.</p>
<p>Ich möchte aber , dass Objekt der Klasse A sie kennt .</p>
<p>Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435834</guid><dc:creator><![CDATA[rixa]]></dc:creator><pubDate>Sun, 13 Jan 2008 12:23:29 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 12:25:49 GMT]]></title><description><![CDATA[<p>rixa schrieb:</p>
<blockquote>
<p>ja. Ich benutze deine Dekl. die m_b Liste hängt am Objkt der Klasse B.</p>
<p>Ich möchte aber , dass Objekt der Klasse A sie kennt.</p>
</blockquote>
<p>Dann musst du sie zur Membervariable der Klasse A machen..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1435836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1435836</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 13 Jan 2008 12:25:49 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 18:04:21 GMT]]></title><description><![CDATA[<p>Hallo Badestrand,</p>
<blockquote>
<p>Dann musst du sie zur Membervariable der Klasse A machen..</p>
</blockquote>
<p>Das kann ich nicht . Die Basisklasse gehört zur Fremdimplementation.</p>
<p>Grüße , Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436037</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436037</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Sun, 13 Jan 2008 18:04:21 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 18:22:19 GMT]]></title><description><![CDATA[<p>Wenn du ein Objekt vom Typ A hast (erzeugt durch <code>A a;</code> oder <code>A* a = new A();</code> ), dann kannst du nicht an die Liste von B rankommen, das <em>geht</em> einfach nicht, weil sie in dem Objekt einfach nicht existiert. Genauso wenig, wie ich jetzt innerhalb von drei Sekunden einen warmen Kaffee aus Peru in der Hand halten könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436049</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436049</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 13 Jan 2008 18:22:19 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Sun, 13 Jan 2008 23:53:36 GMT]]></title><description><![CDATA[<p>Hallo Rixa,</p>
<p>da kann ich Badestrand absolut recht geben.</p>
<p>Falls du dich jetzt dazu entscheiden willst aus der Liste nen Zeiger<br />
auf eine Liste zu machen und den in dem Konstruktor von Unterkopf<br />
umbiegen willst, kriegst du allerdings auch Probleme.</p>
<pre><code class="language-cpp">class Kopf { 

protected: 
    std::list&lt;Position*&gt;*   m_pobPosition; 

};

class UnterKopf : public Kopf {
public: 
    UnterKopf();

private:
    std::list&lt;UnterPosition*&gt; m_upobPosition; 

}; 

UnterKopf::UnterKopf(){
    m_pobPosition = &amp;m_upobPosition; // Das geht leider nicht
}
</code></pre>
<p><a href="http://www.research.att.com/~bs/bs_faq2.html#conversion" rel="nofollow">http://www.research.att.com/~bs/bs_faq2.html#conversion</a></p>
<p>Ich wollte dich nur schonmal vorwarnen <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 />
Ich glaub auf sowas wolltest du eigentlich hinaus.<br />
Sowas kann man wohl mit Templates (solange es nicht virtual ist) umgehen.<br />
Wenn du eigentlich darauf hinaus wolltest, sag Bescheid, ich kuck morgen<br />
(äh, heute abend) wieder rein.</p>
<p>btw: Soll Unterkopf denn auch ne Position-Liste haben oder nur eine<br />
Unterposition-Liste?</p>
<p>Gruß,<br />
CSpille</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1436167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1436167</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sun, 13 Jan 2008 23:53:36 GMT</pubDate></item><item><title><![CDATA[Reply to std::list  Wie bekomme ich den zeiger zurück ? on Tue, 15 Jan 2008 19:17:39 GMT]]></title><description><![CDATA[<p>Hallo CSpille ,</p>
<p>vielen Dank ! Ja , genau so wollte ich es machen.</p>
<p>Hmm, schade das es nicht geht.</p>
<p>Viele Grüße, Rixa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1437251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1437251</guid><dc:creator><![CDATA[Rixa]]></dc:creator><pubDate>Tue, 15 Jan 2008 19:17:39 GMT</pubDate></item></channel></rss>