<?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[Map in Map speichern]]></title><description><![CDATA[<p>huhu,wie der Titel vermuten lässt möchte ich eine Map in einer anderen Map speichern, in etwa so...</p>
<p>class KlasseKlasse {</p>
<pre><code>public:
   ...
   ...
   ...

};

typedef map&lt;uint32_t, KlasseKlasse*&gt; Map_1;

map&lt;uint32_t, Map_1*&gt; Map_2;
</code></pre>
<p>insert hab ich dann wie folgt geregelt</p>
<pre><code>Map_1 MapVomTypMap_1;

MapVomTypMap_1.insert(pair&lt;uint32_t, KlasseKlasse*&gt;(000000,new KlasseKlasse()));
Map_2.insert(pair&lt;uint32_t, Map_1&gt;(zahl, MapVomTypMap_1));
</code></pre>
<p>und jetzt kommts, die Ausgabe klappt noch nicht ganz <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=";D"
      alt="😉"
    /></p>
<pre><code>map&lt;uint32_t, Map_1*&gt;::iterator it_ausgabe = Map_2.begin();

while(it_ausgabe != Map_2.end())
{
   cout &lt;&lt; it_ausgabe-&gt;first &lt;&lt; endl; //geht, alle werte die drin sein sollen sind auch drin
   cout &lt;&lt; it_ausgabe-&gt;second-&gt;first &lt;&lt; endl; // geht nicht :(
   it_ausgabe++;
}
</code></pre>
<p>Fehlermeldung</p>
<p>Trace_Reader.cpp:630:35: Fehler: Basisoperand von »-&gt;« hat Nicht-Zeiger-Typ »std::map&lt;unsigned int, FunctionSummary*&gt;«</p>
<p>hab schon enn bisschen probiert und gesucht bevor ich hier schreibe, die Fragen zur Thematik:</p>
<p>1. Geht das mit dem einfügen auch einfacher, sieht nicht so schön aus?<br />
2. funktioniert das so überhaupt?</p>
<p>LG nippler <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/topic/322806/map-in-map-speichern</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 15:43:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/322806.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 07 Jan 2014 14:47:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Map in Map speichern on Tue, 07 Jan 2014 14:47:52 GMT]]></title><description><![CDATA[<p>huhu,wie der Titel vermuten lässt möchte ich eine Map in einer anderen Map speichern, in etwa so...</p>
<p>class KlasseKlasse {</p>
<pre><code>public:
   ...
   ...
   ...

};

typedef map&lt;uint32_t, KlasseKlasse*&gt; Map_1;

map&lt;uint32_t, Map_1*&gt; Map_2;
</code></pre>
<p>insert hab ich dann wie folgt geregelt</p>
<pre><code>Map_1 MapVomTypMap_1;

MapVomTypMap_1.insert(pair&lt;uint32_t, KlasseKlasse*&gt;(000000,new KlasseKlasse()));
Map_2.insert(pair&lt;uint32_t, Map_1&gt;(zahl, MapVomTypMap_1));
</code></pre>
<p>und jetzt kommts, die Ausgabe klappt noch nicht ganz <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=";D"
      alt="😉"
    /></p>
<pre><code>map&lt;uint32_t, Map_1*&gt;::iterator it_ausgabe = Map_2.begin();

while(it_ausgabe != Map_2.end())
{
   cout &lt;&lt; it_ausgabe-&gt;first &lt;&lt; endl; //geht, alle werte die drin sein sollen sind auch drin
   cout &lt;&lt; it_ausgabe-&gt;second-&gt;first &lt;&lt; endl; // geht nicht :(
   it_ausgabe++;
}
</code></pre>
<p>Fehlermeldung</p>
<p>Trace_Reader.cpp:630:35: Fehler: Basisoperand von »-&gt;« hat Nicht-Zeiger-Typ »std::map&lt;unsigned int, FunctionSummary*&gt;«</p>
<p>hab schon enn bisschen probiert und gesucht bevor ich hier schreibe, die Fragen zur Thematik:</p>
<p>1. Geht das mit dem einfügen auch einfacher, sieht nicht so schön aus?<br />
2. funktioniert das so überhaupt?</p>
<p>LG nippler <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/2375807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2375807</guid><dc:creator><![CDATA[nippler92]]></dc:creator><pubDate>Tue, 07 Jan 2014 14:47:52 GMT</pubDate></item><item><title><![CDATA[Reply to Map in Map speichern on Tue, 07 Jan 2014 14:54:25 GMT]]></title><description><![CDATA[<pre><code>for(map&lt;uint32_t, Map_1*&gt;::iterator it_ausgabe = Map_2.begin(); it_ausgabe != Map_2.end(); ++it_ausgabe)
{
   cout &lt;&lt; it_ausgabe-&gt;first &lt;&lt; endl &lt;&lt; endl; // Gibt den Schlüssel der äußeren Map zurück.

   // Iteriert über die innere Map.
   for(Map_1::iterator it_innere_map = it_ausgabe-&gt;second-&gt;begin(); it_innere_map != it_ausgabe-&gt;second-&gt;end(); ++it_innere_map)
   {
      cout &lt;&lt; it_innere_map-&gt;first &lt;&lt; endl;
      cout &lt;&lt; it_innere_map-&gt;second&lt;&lt; endl;
   }

   cout &lt;&lt; endl &lt;&lt; endl;
}
</code></pre>
<p>Du hattest einen kleinen Denkfehler. <code>it_ausgabe-&gt;second</code> ist vom Typ <code>Map_1*</code> , nicht <code>Map_1::iterator</code> . Deshalb geht das nicht.<br />
So sollte es gehen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2375812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2375812</guid><dc:creator><![CDATA[Die erinnerung]]></dc:creator><pubDate>Tue, 07 Jan 2014 14:54:25 GMT</pubDate></item></channel></rss>