<?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[vector und Elementsuche]]></title><description><![CDATA[<p>Hallo,</p>
<p>Bin gerade dabei mich mit der STL vertraut zu machen.<br />
Ich find aber keine Antwort auf die (fundamentale) Frage wie ich ein Element in einem vector finde.</p>
<p>Muss ich dazu den '==' Operator definieren (wie macht man das).</p>
<p>Vielen vielen Dank für euere Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/139832/vector-und-elementsuche</link><generator>RSS for Node</generator><lastBuildDate>Sun, 30 Aug 2026 19:17:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/139832.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 09 Mar 2006 18:01:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:01:55 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Bin gerade dabei mich mit der STL vertraut zu machen.<br />
Ich find aber keine Antwort auf die (fundamentale) Frage wie ich ein Element in einem vector finde.</p>
<p>Muss ich dazu den '==' Operator definieren (wie macht man das).</p>
<p>Vielen vielen Dank für euere Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012687</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012687</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:01:55 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:11:27 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>dazu gibts entweder die eckigen Klammern wie bei C-Arrays oder die Methode ::at().</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012697</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012697</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:11:27 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:11:57 GMT]]></title><description><![CDATA[<p>Wie du in jedem sequentiellen Feld ein Element findest.</p>
<p>Auf jeden Fall führt die lineare Suche zum Ziel, wenn das Element enthalten ist.</p>
<p>In Schleife solange den Vector abwandern, bis am Ende oder Treffer.<br />
== ist schon passend überladen.</p>
<p>Ist i-tes Element eines vector&lt;int&gt; eine 3?</p>
<pre><code class="language-cpp">if (vc[i]==3) ...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1012698</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012698</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:11:57 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:14:26 GMT]]></title><description><![CDATA[<p>Danke, allerdings meine ich was anderes.</p>
<p>Ich habe</p>
<p>Elementtyp e;<br />
vector&lt;Elemttyp&gt; v;</p>
<p>Wie suche ich in vector am einfachsten nach einem Element was (binär) gleich 'e' ist?</p>
<p>Nochmals danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012702</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:14:26 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:17:15 GMT]]></title><description><![CDATA[<p>Wenn ich dich richtig verstanden habe, suchst du <a href="http://www.cppreference.com/cppalgorithm/find.html" rel="nofollow">find</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012708</guid><dc:creator><![CDATA[michba]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:17:15 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:18:02 GMT]]></title><description><![CDATA[<p>Es gibt also keine Methode die mir Schleifenarbeit zur Suche abnimmt?<br />
Also sowas wie find() oder search()?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012710</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012710</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:18:02 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:25:09 GMT]]></title><description><![CDATA[<p><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="😕"
    /><br />
Hast du dir den Link mal angesehen? Da ist doch auch ein Beispiel...</p>
<p>Wenn du etwas anderes meinst, dann musst du es deutlicher erklären.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012724</guid><dc:creator><![CDATA[michba]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:25:09 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:25:17 GMT]]></title><description><![CDATA[<p>Wenn ich find() benutze passiert folgendes:</p>
<p>typedef vector&lt;egal&gt; tut;</p>
<pre><code class="language-cpp">void blah(tut* v)
{
  egal e;
  tut::iterator it;

  tut = find(v-&gt;begin(), v-&gt;end(), e);
}
</code></pre>
<p>Dann sagt er mir in 'algorithm' bei der find() definition: &quot;Binärer Operator '==': Es konnte kein Operator gefunden wird, der einen linksseitigen Operator vom Typ ... akzeptiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012725</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012725</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:25:17 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:27:03 GMT]]></title><description><![CDATA[<p>Korrektur:</p>
<p>it = find(v-&gt;begin(), v-&gt;end(), e);</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012727</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:27:03 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:34:14 GMT]]></title><description><![CDATA[<p>wichtig ist vielleicht noch:</p>
<p>egal e; // Kein primitiver Datentyp</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012734</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012734</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:34:14 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:35:01 GMT]]></title><description><![CDATA[<p>Hast du es mal mit integralen Typen probiert?<br />
Falls egal eine Klasse ist, muss diese eine Methode mit der Signatur</p>
<pre><code class="language-cpp">bool egal::operator== (const egal&amp;)
</code></pre>
<p>besitzen, oder es muss eine Funktion der Signatur</p>
<pre><code class="language-cpp">bool operator== (const egal&amp;, const egal&amp;)
</code></pre>
<p>existieren.</p>
<p>Übrigens, &quot;Binärer Operator&quot; heißt nicht, dass ein Vergleich auf Ebene der Binärdarstellung durchgeführt wird, sondern dass dieser Operator <em>zwei</em> Operanden entgegennimmt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012736</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012736</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:35:01 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:39:06 GMT]]></title><description><![CDATA[<p>egal ist eine Struktur.<br />
Muss ich das dafür auch machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012741</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:39:06 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 18:59:27 GMT]]></title><description><![CDATA[<p>Strukturen sind in C++ Klassen (falls sie nicht nur POD-Elemente enthalten), also gilt für sie dasselbe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012754</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Thu, 09 Mar 2006 18:59:27 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 19:11:11 GMT]]></title><description><![CDATA[<p>OK, Danke!</p>
<p>Mein Problem ist nur dass die Struktur in einem C-header definiert ist.<br />
Wie/wo muss ich da den Operator beschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012759</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 19:11:11 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 19:29:52 GMT]]></title><description><![CDATA[<p>Beispiel:</p>
<p>xyz.h</p>
<pre><code class="language-cpp">typdef struct
{
  float x;
  float y;

  #ifdef __cplusplus
  bool operator== (const piVERTEX &amp;a, const piVERTEX &amp;b)
  {
    if( (a-&gt;x == b-&gt;x) &amp;&amp; (a-&gt;y == b-&gt;y) ) return true;
  }
  #endif
}
</code></pre>
<p>Dann meckert der Compiler (2*): error C2143: Syntaxfehler: Es fehlt ',' vor '&amp;'</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012775</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012775</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 19:29:52 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 19:35:57 GMT]]></title><description><![CDATA[<p>Nimm lieber die Variante des globalen ==-Operators, der sollte auch mit C-Structs funktionieren. Du brauchst dafür nichtmal den Header zu ändern (was du auch nicht tuen solltest). Die Typen existieren bei der Deklaration der Funktion noch nicht, daher wird der Code nicht kompiliert (das nächste mal bitte den vollständigen Fehlertext).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012785</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Thu, 09 Mar 2006 19:35:57 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 19:43:29 GMT]]></title><description><![CDATA[<p>Hmm...</p>
<p>Wenn ich im Header zur cpp Datei, wo ich suchen möchte, einfüge:</p>
<p>#ifdef __cplusplus</p>
<p>bool operator== (const blah &amp;a, const blah &amp;b)<br />
{<br />
if( (a.x == b.x) &amp;&amp; (a.y == b.y) ) return true;<br />
}</p>
<p>#endif</p>
<p>kommt der Compilerfehler (2*): error C2733: Zweite C-Bindung für überladene Funktion 'operator`=='' nicht zulässig</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012800</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012800</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 19:43:29 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 20:23:05 GMT]]></title><description><![CDATA[<p>Hilfe! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012823</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 20:23:05 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 20:51:49 GMT]]></title><description><![CDATA[<p>Ah...</p>
<p>Wenn ich die Funktion in die .cpp schreibe funktioniert es.<br />
Warum nicht im header?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012868</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 20:51:49 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 21:44:04 GMT]]></title><description><![CDATA[<p>Hünchen schrieb:</p>
<blockquote>
<p>Hmm...</p>
<p>Wenn ich im Header zur cpp Datei, wo ich suchen möchte, einfüge:</p>
<p>#ifdef __cplusplus</p>
<p>bool operator== (const blah &amp;a, const blah &amp;b)<br />
{<br />
if( (a.x == b.x) &amp;&amp; (a.y == b.y) ) return true;<br />
}</p>
<p>#endif</p>
<p>kommt der Compilerfehler (2*): error C2733: Zweite C-Bindung für überladene Funktion 'operator`=='' nicht zulässig</p>
</blockquote>
<p>die definition steht nicht zufällig in einem extern &quot;C&quot; block? im übrigen ist der operator selbst fehlerhaft ohne else bzw. fall-through case. besser ist nat. auf das if ganz zu verzichten und die bedingung innerhalb if direkt als return argument zu benutzen <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="😉"
    /> da der operator in einem header definiert wird, sollte er auch inline sein. es sei noch darauf verwiesen, dass ein op== nicht zwingend benötigt wird: das kann auch eine ganz normale funktion (oder funktor) sein wenn statt find find_if verwendet wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012889</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012889</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 09 Mar 2006 21:44:04 GMT</pubDate></item><item><title><![CDATA[Reply to vector und Elementsuche on Thu, 09 Mar 2006 21:46:27 GMT]]></title><description><![CDATA[<p>Lag tatsächlich am extern &quot;C&quot; block.<br />
Vielen Dank für die viele Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1012891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1012891</guid><dc:creator><![CDATA[Hünchen]]></dc:creator><pubDate>Thu, 09 Mar 2006 21:46:27 GMT</pubDate></item></channel></rss>