<?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[prädikat zum vector vergleichen]]></title><description><![CDATA[<p>steh grad sowas von auf dem schlauch...</p>
<p>warum funktioniert das nicht?<br />
error C2664: 'compStruct': Konvertierung des Parameters 1 von 'std::_Vector_iterator&lt;_Myvec&gt;' in 'const teststruct &amp;' nicht möglich</p>
<pre><code>#include&lt;iostream&gt;
using namespace std;
#include &lt;iterator&gt;
#include &lt;vector&gt;

struct teststruct{	

	int val1;
	int val2;

};

bool compStruct(const teststruct&amp; v1, const teststruct&amp; v2){

	return v1.val1&lt;v2.val2;
}

int main(){
	vector&lt;teststruct&gt; i;
	teststruct v;
	v.val1=1;
	v.val2=15;

	i.push_back(v);
	v.val1=12;
	i.push_back(v);

	compStruct(i.begin(), i.end());

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/317140/prädikat-zum-vector-vergleichen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Jul 2026 10:23:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/317140.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 May 2013 08:10:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to prädikat zum vector vergleichen on Wed, 29 May 2013 08:10:38 GMT]]></title><description><![CDATA[<p>steh grad sowas von auf dem schlauch...</p>
<p>warum funktioniert das nicht?<br />
error C2664: 'compStruct': Konvertierung des Parameters 1 von 'std::_Vector_iterator&lt;_Myvec&gt;' in 'const teststruct &amp;' nicht möglich</p>
<pre><code>#include&lt;iostream&gt;
using namespace std;
#include &lt;iterator&gt;
#include &lt;vector&gt;

struct teststruct{	

	int val1;
	int val2;

};

bool compStruct(const teststruct&amp; v1, const teststruct&amp; v2){

	return v1.val1&lt;v2.val2;
}

int main(){
	vector&lt;teststruct&gt; i;
	teststruct v;
	v.val1=1;
	v.val2=15;

	i.push_back(v);
	v.val1=12;
	i.push_back(v);

	compStruct(i.begin(), i.end());

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2326984</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2326984</guid><dc:creator><![CDATA[mordeng]]></dc:creator><pubDate>Wed, 29 May 2013 08:10:38 GMT</pubDate></item><item><title><![CDATA[Reply to prädikat zum vector vergleichen on Wed, 29 May 2013 08:18:40 GMT]]></title><description><![CDATA[<p>begin() und end() sind Iteratoren. Ein Iterator ist kein teststruct. end() ist auch nicht das letzte Element, sondern zeigt auf das Element *hinter* dem letzten.</p>
<p>du könntest std::sort verwenden:</p>
<pre><code class="language-cpp">std::sort(i.begin(), i.end(), compStruct);
</code></pre>
<p>wenn du unbedingt das erste und letzte Element haben möchtest, kannst du std::vector::front() und std::vector::back() verwenden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2326985</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2326985</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Wed, 29 May 2013 08:18:40 GMT</pubDate></item><item><title><![CDATA[Reply to prädikat zum vector vergleichen on Wed, 29 May 2013 08:21:53 GMT]]></title><description><![CDATA[<p>das ganze is nur n kleiner ausschnit aus einer template funktion</p>
<p>isSorted(TItor begin, TItor end, func f)</p>
<p>hab zwei iteratoren un muss dies per prädikat vergleichen</p>
<p>f(*begin, *end) funktioniert auch nicht</p>
<p>(ob es jetzt begin, end oder willkürlicher iterator aus dem container ist, ist irrelevant</p>
<p>thx für die schnelle antwort</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2326986</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2326986</guid><dc:creator><![CDATA[mordeng]]></dc:creator><pubDate>Wed, 29 May 2013 08:21:53 GMT</pubDate></item><item><title><![CDATA[Reply to prädikat zum vector vergleichen on Wed, 29 May 2013 08:33:21 GMT]]></title><description><![CDATA[<p>beispielsweise</p>
<p>std::equal überprüft doch auch auf</p>
<p>f(*iter1, *iter2)</p>
<p>wenn dieser einen vector&lt;mystruct&gt; bekommt müsste das doch auch nicht funktionieren oder?</p>
<p><a href="http://www.cplusplus.com/reference/algorithm/equal/" rel="nofollow">http://www.cplusplus.com/reference/algorithm/equal/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2326989</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2326989</guid><dc:creator><![CDATA[mordeng]]></dc:creator><pubDate>Wed, 29 May 2013 08:33:21 GMT</pubDate></item><item><title><![CDATA[Reply to prädikat zum vector vergleichen on Wed, 29 May 2013 08:36:26 GMT]]></title><description><![CDATA[<p>kk</p>
<p>vl. bin ich nur ziemlich übernachtig</p>
<p>f(*iter, *iter) funktioniert doch</p>
<p>ka. wo vorher der fehler war....</p>
<p>thx trotzdem!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2326990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2326990</guid><dc:creator><![CDATA[mordeng]]></dc:creator><pubDate>Wed, 29 May 2013 08:36:26 GMT</pubDate></item></channel></rss>