<?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[Getfunction für eine map]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich bekomme langsam einen Knoten ins Hirn</p>
<pre><code>struct PtEntry
{
    struct InTriangle
    {

        int triangle;
        Point projected;
        double dist;
        InTriangle(int triangle_, const Point&amp; projected_, double dist_)
            : 
        triangle(triangle_), projected(projected_), dist(dist_){}

    };

    list&lt;InTriangle&gt; entries;
    inline double getDest() {return dist;}
    void addNode(int triangle_, const Point&amp; projected_, double dist_)
    {
        InTriangle node(triangle_, projected_, dist_);

        entries.push_back(node);

    }
    void clear(int triangle_, const Point&amp; projected_, double dist_)
    {

        entries.clear();

    }

};
</code></pre>
<p>nun erstelle ich eine map</p>
<p>map&lt;unsigned long, PtEntry&gt; projectInTriangleMap;</p>
<p>und kann dann über :</p>
<pre><code>entry.addNode(*j, projected, distance );
                                        projectInTriangleMap.insert(make_pair(index, entry));
</code></pre>
<p>auch Dinge in die map knallen</p>
<p>nur mein getDest funktioniert nicht, da die Variable ja in dem falschen struct definiert worden ist. Die über InTriangle::dist geht ja auch nicht.</p>
<p>Ich steh grad auf dem Schlauch.</p>
<p>Danke im Vorraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/280643/getfunction-für-eine-map</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 01:23:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/280643.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 18 Jan 2011 21:09:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 21:09:32 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich bekomme langsam einen Knoten ins Hirn</p>
<pre><code>struct PtEntry
{
    struct InTriangle
    {

        int triangle;
        Point projected;
        double dist;
        InTriangle(int triangle_, const Point&amp; projected_, double dist_)
            : 
        triangle(triangle_), projected(projected_), dist(dist_){}

    };

    list&lt;InTriangle&gt; entries;
    inline double getDest() {return dist;}
    void addNode(int triangle_, const Point&amp; projected_, double dist_)
    {
        InTriangle node(triangle_, projected_, dist_);

        entries.push_back(node);

    }
    void clear(int triangle_, const Point&amp; projected_, double dist_)
    {

        entries.clear();

    }

};
</code></pre>
<p>nun erstelle ich eine map</p>
<p>map&lt;unsigned long, PtEntry&gt; projectInTriangleMap;</p>
<p>und kann dann über :</p>
<pre><code>entry.addNode(*j, projected, distance );
                                        projectInTriangleMap.insert(make_pair(index, entry));
</code></pre>
<p>auch Dinge in die map knallen</p>
<p>nur mein getDest funktioniert nicht, da die Variable ja in dem falschen struct definiert worden ist. Die über InTriangle::dist geht ja auch nicht.</p>
<p>Ich steh grad auf dem Schlauch.</p>
<p>Danke im Vorraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008512</guid><dc:creator><![CDATA[Necrofighter]]></dc:creator><pubDate>Tue, 18 Jan 2011 21:09:32 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 21:24:26 GMT]]></title><description><![CDATA[<p>Welches dist soll denn auch von PtEntry::getDest() zurückgegeben werden? dist ist eine Variable von InTriangle und ein PtEntry-Objekt hält beliebig viele InTriangle-Objekte in einer Liste. Also hat ein PtEntry-Objekt auch beliebig viele verschiedene dist-&quot;Member&quot;. Welches willst du denn dann mit getDest() liefern?</p>
<p>BTW: Ich find deine Namenswahl nicht so schön. Was heißt &quot;Pt&quot; bei PtEntry? projected ist ein Adjektiv und kein Nomen, wie man es bei einem Point-Objekt erwartet (wenn ich den Datentyp von projected raten müsste, würde ich bool sagen). triangle ist vom Typ int, aber wie soll ein Dreieck eine Ganzzahl sein? getD<strong>e</strong>st gibt d<strong>i</strong>st zurück etc.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008516</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008516</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 18 Jan 2011 21:24:26 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 21:26:04 GMT]]></title><description><![CDATA[<p>ja ich will aus der map zu einem bestimmten Schlüssel das dist aufrufen können.</p>
<p>ja projected soll heißen &quot;schon projeziert&quot; und int triangle, weil es nur die nummer des Dreiecks angibt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008518</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008518</guid><dc:creator><![CDATA[Necrofighter]]></dc:creator><pubDate>Tue, 18 Jan 2011 21:26:04 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 21:32:40 GMT]]></title><description><![CDATA[<p>Dann musst du noch den Schlüssel mitübergeben und nach diesem suchen:</p>
<pre><code class="language-cpp">double getDist(const Key&amp; myKey)
{
	list&lt;InTriangle&gt;::iterator iter = find(entries.begin(), entries.end(), myKey);
	if(iter == entries.end())
		nicht gefunden. Exception werfen oder irgendnen Defaultrückgabewert
	else
		return iter-&gt;dist;
}
</code></pre>
<p>Necrofighter schrieb:</p>
<blockquote>
<p>ja projected soll heißen &quot;schon projeziert&quot;</p>
</blockquote>
<p>Warum ist das dann ein Point-Objekt und kein bool?</p>
<blockquote>
<p>und int triangle, weil es nur die nummer des Dreiecks angibt</p>
</blockquote>
<p>Wie wärs mit <code>id</code> ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008520</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 18 Jan 2011 21:32:40 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 21:57:25 GMT]]></title><description><![CDATA[<p>Natürlich. Nur gibts entries.find nicht, entries ist ja vom Typ List</p>
<p>aber war eigentlich logisch dass es über ein objekt gehen muss</p>
<p>naja da werden x,y,z von projected gespeichert</p>
<p>Ich schriebe also noch eine find function dann sollte es ja eigentlich klappen.</p>
<p>Kann man die map nicht iwie einfacher gestalten, sodass ich einfach eine Getfunction hinschreiben kann, ohne den ganzen Aufwand?</p>
<p>Also eine Map in die zu jedem Key eine Liste gespeichert werden soll.</p>
<p>Ich bekomms nicht besser hin, und so ist die Getfunction zu schreiben reine Hölle für einen Neuling.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008524</guid><dc:creator><![CDATA[Necrofighter]]></dc:creator><pubDate>Tue, 18 Jan 2011 21:57:25 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 22:03:02 GMT]]></title><description><![CDATA[<p>Necrofighter schrieb:</p>
<blockquote>
<p>Natürlich. Nur gibts entries.find nicht, entries ist ja vom Typ List</p>
</blockquote>
<p>Habs schon geändert. Du brauchst dann noch den Header &lt;algorithm&gt;.</p>
<blockquote>
<p>naja da werden x,y,z von projected gespeichert</p>
</blockquote>
<p>Und wie sieht das Objekt aus, wenn noch keine Projektion stattgefunden hat?</p>
<blockquote>
<p>Kann man die map nicht iwie einfacher gestalten, sodass ich einfach eine Getfunction hinschreiben kann, ohne den ganzen Aufwand?</p>
<p>Also eine Map in die zu jedem Key eine Liste gespeichert werden soll.</p>
</blockquote>
<p>Dafür gibt es, glaubs oder nicht, den Datentype std::map <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="😉"
    /> Wenn deine Schlüssel einfach nur die Zahlen 0,...,n sind, dann kannst du das auch über einen std::vector machen.</p>
<p>Wenn es zu einem Schlüssel mehrere Werte geben können soll, schau dir std::multimap an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008534</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008534</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 18 Jan 2011 22:03:02 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 22:14:59 GMT]]></title><description><![CDATA[<p>Ich danke dir schonmal....jetzt weint der Compiler noch weil Key natürlich nirgends definiert ist...</p>
<p>der Punkt wurde da schon projeziert <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 Punkte werden auf verschiedene Dreiecke projeziert und ich will die Entfernungen speichern, um dann den kürzesten Abstand auszuwählen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008542</guid><dc:creator><![CDATA[Necrofighter]]></dc:creator><pubDate>Tue, 18 Jan 2011 22:14:59 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 22:31:24 GMT]]></title><description><![CDATA[<p>Necrofighter schrieb:</p>
<blockquote>
<p>Ich danke dir schonmal....jetzt weint der Compiler noch weil Key natürlich nirgends definiert ist...</p>
</blockquote>
<p>Ich wusste nicht, was du als Key benutzen willst. Du kannst daraus z. B. int machen und dann die id übergeben.</p>
<blockquote>
<p>der Punkt wurde da schon projeziert <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>Auch wenn ich die Funktion der Variablen nicht ganz verstehe: Wie wärs mit dem Namen <code>projection</code> ?</p>
<p>Zum Sinn der Variablen: Du sagst durch die Member-Beziehung, dass ein Dreieck eine Projektion vom Typ <code>Point</code> <em>hat</em>. Wie sieht denn eine Projektion eines Dreiecks auf <em>einen</em> Punkt aus (vorausgesetzt, wir reden über denselben Raum)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008545</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 18 Jan 2011 22:31:24 GMT</pubDate></item><item><title><![CDATA[Reply to Getfunction für eine map on Tue, 18 Jan 2011 22:42:33 GMT]]></title><description><![CDATA[<p>Nein Point projected gibt mir die Koordinaten des projezierten punktes auf das Dreieck mit der Nummer *j aus.</p>
<p>Daher steht in der Map dann:</p>
<p>First: Index des Punktes</p>
<p>Second: Index vom Dreieck,</p>
<p>Koordinaten des Punktes nach projektion auf das Dreieck</p>
<p>Abstand Ausgangspunkt zum Projezierten Punkt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008548</guid><dc:creator><![CDATA[Necrofighter]]></dc:creator><pubDate>Tue, 18 Jan 2011 22:42:33 GMT</pubDate></item></channel></rss>