<?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[Zugriff auf das selbe Objekt aus 2 Klassen]]></title><description><![CDATA[<p>Guten Morgen!</p>
<p>Ich habe folgendes Design:</p>
<pre><code>struct Road {
...
};

class RoadContainer {
private:
   map&lt;int, Road&gt; mRoads;

public:
   void addRoad(const Road&amp; road) {
       mRoads[road.id] = road;
   }

   Road* RoadContainer::getRoad(int roadID) {
       map&lt;int, Road&gt;::iterator it = mRoads.find(roadID);
       return it != mRoads.end() ? &amp;(it-&gt;second) : NULL;
};
</code></pre>
<p>Der RoadContainer speichert also die Roads by value ab.<br />
Ein Problem habe ich nun, wenn ich eine Road anlege, diese in den RoadContainer hinzufüge und zusätzlich ein anderes Objekt auch noch Zugriff auf diese Road benötigt.<br />
Beispiel:</p>
<pre><code>Road road;
road.id = ...

mRoadContainer.addRoad( road ); // Jetzt ist in mRoadContainer ja eine KOPIE von road

Terrain terrain;
terrain.addRoad( ??? ); Terrain soll auf die road zeigen, die in mRoadContainer ist
</code></pre>
<p>Wie mache ich das, dass die road in terrain die selbe road wie die in mRoadContainer ist?<br />
Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/331502/zugriff-auf-das-selbe-objekt-aus-2-klassen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 01 May 2026 16:44:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/331502.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Mar 2015 08:47:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zugriff auf das selbe Objekt aus 2 Klassen on Wed, 04 Mar 2015 08:47:17 GMT]]></title><description><![CDATA[<p>Guten Morgen!</p>
<p>Ich habe folgendes Design:</p>
<pre><code>struct Road {
...
};

class RoadContainer {
private:
   map&lt;int, Road&gt; mRoads;

public:
   void addRoad(const Road&amp; road) {
       mRoads[road.id] = road;
   }

   Road* RoadContainer::getRoad(int roadID) {
       map&lt;int, Road&gt;::iterator it = mRoads.find(roadID);
       return it != mRoads.end() ? &amp;(it-&gt;second) : NULL;
};
</code></pre>
<p>Der RoadContainer speichert also die Roads by value ab.<br />
Ein Problem habe ich nun, wenn ich eine Road anlege, diese in den RoadContainer hinzufüge und zusätzlich ein anderes Objekt auch noch Zugriff auf diese Road benötigt.<br />
Beispiel:</p>
<pre><code>Road road;
road.id = ...

mRoadContainer.addRoad( road ); // Jetzt ist in mRoadContainer ja eine KOPIE von road

Terrain terrain;
terrain.addRoad( ??? ); Terrain soll auf die road zeigen, die in mRoadContainer ist
</code></pre>
<p>Wie mache ich das, dass die road in terrain die selbe road wie die in mRoadContainer ist?<br />
Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2445181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2445181</guid><dc:creator><![CDATA[wussi2]]></dc:creator><pubDate>Wed, 04 Mar 2015 08:47:17 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf das selbe Objekt aus 2 Klassen on Wed, 04 Mar 2015 09:39:19 GMT]]></title><description><![CDATA[<p>Du speicherst die Id in Terrain und fragst damit den Container.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2445186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2445186</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Mar 2015 09:39:19 GMT</pubDate></item></channel></rss>