<?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[STL set und das Suchen... [SOLVED]]]></title><description><![CDATA[<p>hallo,</p>
<p>ich moechte in einem STL set (&lt;set&gt;) nach einem element suchen. nur ich hab leider nur ein objekt mit nicht allen attributen.<br />
gibt es also eine moeglichkeit die vergleichsfunktion fuer das suchen zu beeinflussen?</p>
<p>ich hoffe ihr versteht mich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>danke im voraus!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/171154/stl-set-und-das-suchen-solved</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 08:12:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/171154.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 22 Jan 2007 22:17:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Mon, 22 Jan 2007 22:55:42 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>ich moechte in einem STL set (&lt;set&gt;) nach einem element suchen. nur ich hab leider nur ein objekt mit nicht allen attributen.<br />
gibt es also eine moeglichkeit die vergleichsfunktion fuer das suchen zu beeinflussen?</p>
<p>ich hoffe ihr versteht mich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>danke im voraus!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1214848</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1214848</guid><dc:creator><![CDATA[hephaistos6]]></dc:creator><pubDate>Mon, 22 Jan 2007 22:55:42 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Mon, 22 Jan 2007 22:43:17 GMT]]></title><description><![CDATA[<p>Du kannst Dir die Vergleichsfunktion in Gestalt eines Funktors selber schreiben. Etwa so:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;set&gt;

class Klasse
{
public:
    Klasse() : m_id(-1), m_x(3.14) {}
    Klasse( int id, double x ) : m_id(id), m_x(x) {}

    friend struct Comp;
    friend std::ostream&amp; operator&lt;&lt;( std::ostream&amp; out, const Klasse&amp; k )
    {
        return out &lt;&lt; k.m_id &lt;&lt; &quot; &quot; &lt;&lt; k.m_x;
    }
private:
    int m_id;
    double m_x;
};
struct Comp
{
    bool operator()( const Klasse&amp; a, Klasse&amp; b ) const
    {
        return a.m_id &lt; b.m_id;
    }
};

int main()
{
    using namespace std;
    set&lt; Klasse, Comp &gt; s;
    s.insert( Klasse( 8, 1.23 ) );
    s.insert( Klasse( 9, -3.265 ) );
    set&lt; Klasse, Comp &gt;::iterator i = s.find( Klasse( 8, 0.0 ) ); // der 2.Parameter spielt keine Rolle
    if( i != s.end() )
        cout &lt;&lt; &quot;Gefunden: &quot; &lt;&lt; *i &lt;&lt; endl;
    return 0;
}
</code></pre>
<p>Im operator() von Comp wird definiert, welche Member der Klasse für den Vergleich hergenommen werden. Bedenke aber, dass in einem set keine zwei gleichen Elemente stehen können. Was gleich ist und was nicht, wird hier nur über Comp geregelt.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1214857</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1214857</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Mon, 22 Jan 2007 22:43:17 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Mon, 22 Jan 2007 22:55:21 GMT]]></title><description><![CDATA[<p>hallo!</p>
<p>danke, eigentlich zu einfach.<br />
diese Vergleichsfunktion hatte ich eh schon fuer die Sortierung. Dass diese ja auch auf die Suche zutrefft, daran hab ich gedacht!</p>
<p>danke fuer die Hilfe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1214862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1214862</guid><dc:creator><![CDATA[hephaistos6]]></dc:creator><pubDate>Mon, 22 Jan 2007 22:55:21 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Tue, 23 Jan 2007 08:47:51 GMT]]></title><description><![CDATA[<p>hephaistos6 schrieb:</p>
<blockquote>
<p>hallo,</p>
<p>ich moechte in einem STL set (&lt;set&gt;) nach einem element suchen. nur ich hab leider nur ein objekt mit nicht allen attributen....</p>
</blockquote>
<p>Das habe ich auch mal mit Verwunderung festgestellt: set sagt mir eigentlich nur, ob es ein identisches Objekt schon vorher gab ...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1214990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1214990</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 23 Jan 2007 08:47:51 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Tue, 23 Jan 2007 10:47:41 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>Das habe ich auch mal mit Verwunderung festgestellt: set sagt mir eigentlich nur, ob es ein identisches Objekt schon vorher gab ...</p>
</blockquote>
<p>Was sollte daran verwunderlich sein? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215082</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Tue, 23 Jan 2007 10:47:41 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Tue, 23 Jan 2007 11:53:45 GMT]]></title><description><![CDATA[<p>finix schrieb:</p>
<blockquote>
<p>Simon2 schrieb:</p>
<blockquote>
<p>Das habe ich auch mal mit Verwunderung festgestellt: set sagt mir eigentlich nur, ob es ein identisches Objekt schon vorher gab ...</p>
</blockquote>
<p>Was sollte daran verwunderlich sein? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>Irgendwie hatte ich das bis dahin (vor ca. 1 Jahr) anders (=falsch) verstanden ... so mehr wie einen &quot;Kasten, in dem man herumsuchen kann&quot; .... inzwischen habe ich festgestellt, dass (multi-)map meiner ursprünglichen Vorstellung eher entspricht.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215121</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 23 Jan 2007 11:53:45 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Tue, 23 Jan 2007 11:58:03 GMT]]></title><description><![CDATA[<p>Was spricht denn dagegen, in einer set&lt;&gt; zu suchen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215125</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 23 Jan 2007 11:58:03 GMT</pubDate></item><item><title><![CDATA[Reply to STL set und das Suchen... [SOLVED] on Tue, 23 Jan 2007 12:06:58 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>Was spricht denn dagegen, in einer set&lt;&gt; zu suchen?</p>
</blockquote>
<p>... dass ich vorher genau das, was ich finden möchte, schon in der Hand haben muss. Damit habe ich nach der Suche nur die Information gewonnen, dass sich das Gesuchte schon vorher im set befand (oder eben nicht). Sobald ich mehr Information gewinnen möchte, kann ich natürlich Schlüssel und Daten in einer Klasse kapseln, die dann noch einen geeigneten Vergleichoperator anbietet ... oder eben gleich eine map nehmen, wenn ich zu einen Schlüssel die geeigneten Daten bestimmen (= vorher nicht wissen) möchte.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215131</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 23 Jan 2007 12:06:58 GMT</pubDate></item></channel></rss>