<?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 Iteratoren Syntax Problem]]></title><description><![CDATA[<p>Hallo, ich habe Probleme mit der richtigen Sytnax der STL Iteratoren, in diesem Fall find. Waere froh, ueber Hilfe.</p>
<pre><code class="language-cpp">//Auszug der Klassendeklarationen
template &lt;class T&gt;
class MyQueue
{
...

class iterator
{
...

}; //end iterator

iterator begin() const { return iterator(m_front); }
iterator end() const { return iterator(); }
iterator find(iterator begin, iterator end, T x);

};  //end MyQueue
</code></pre>
<pre><code class="language-cpp">//find ohne Implementierung
template &lt;class T&gt;         
typename MyQueue&lt;T&gt;::iterator MyQueue&lt;T&gt;::find(typename MyQueue&lt;T&gt;::iterator begin, typename MyQueue&lt;T&gt;::iterator end, T x)
{

}
</code></pre>
<pre><code class="language-cpp">//Aufruf in main
MyQueue&lt;int&gt;::iterator position = find(queue.begin(), queue.end(), number);
</code></pre>
<p><strong>Sytnaxfehler: find undeclared (first use this function)</strong></p>
<p>Wo liegt der Syntaxfehler, sodass find nicht aufgerufen werden kann ?</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/268170/stl-iteratoren-syntax-problem</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 01:09:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/268170.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 05 Jun 2010 11:21:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 11:21:18 GMT]]></title><description><![CDATA[<p>Hallo, ich habe Probleme mit der richtigen Sytnax der STL Iteratoren, in diesem Fall find. Waere froh, ueber Hilfe.</p>
<pre><code class="language-cpp">//Auszug der Klassendeklarationen
template &lt;class T&gt;
class MyQueue
{
...

class iterator
{
...

}; //end iterator

iterator begin() const { return iterator(m_front); }
iterator end() const { return iterator(); }
iterator find(iterator begin, iterator end, T x);

};  //end MyQueue
</code></pre>
<pre><code class="language-cpp">//find ohne Implementierung
template &lt;class T&gt;         
typename MyQueue&lt;T&gt;::iterator MyQueue&lt;T&gt;::find(typename MyQueue&lt;T&gt;::iterator begin, typename MyQueue&lt;T&gt;::iterator end, T x)
{

}
</code></pre>
<pre><code class="language-cpp">//Aufruf in main
MyQueue&lt;int&gt;::iterator position = find(queue.begin(), queue.end(), number);
</code></pre>
<p><strong>Sytnaxfehler: find undeclared (first use this function)</strong></p>
<p>Wo liegt der Syntaxfehler, sodass find nicht aufgerufen werden kann ?</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907243</guid><dc:creator><![CDATA[Tpau]]></dc:creator><pubDate>Sat, 05 Jun 2010 11:21:18 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 11:28:01 GMT]]></title><description><![CDATA[<p>1. Es geht hier wohl nicht um STL Iteratoren sondern um deine eigenen.<br />
2. <code>find</code> ist eine nicht statische Methode deiner MyQueue Klasse und muss daher mit einer Instanz aufgerufen werden.</p>
<pre><code class="language-cpp">MyQueue&lt;int&gt; mq;
mq.find(...);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1907247</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907247</guid><dc:creator><![CDATA[brotbernd]]></dc:creator><pubDate>Sat, 05 Jun 2010 11:28:01 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 11:35:42 GMT]]></title><description><![CDATA[<p>brotbernd schrieb:</p>
<blockquote>
<p>1. Es geht hier wohl nicht um STL Iteratoren sondern um deine eigenen.<br />
2. <code>find</code> ist eine nicht statische Methode deiner MyQueue Klasse und muss daher mit einer Instanz aufgerufen werden.</p>
<pre><code class="language-cpp">MyQueue&lt;int&gt; mq;
mq.find(...);
</code></pre>
</blockquote>
<p>Danke erstmal, ja stimmt es sind meine Iteratoren, sorry.<br />
Und wie muss find dann deklariert werden, sodass es mit dem Aufruf von oben klappt, also mit:</p>
<pre><code class="language-cpp">MyQueue&lt;int&gt;::iterator position = find(queue.begin(), queue.end(), number);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1907254</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907254</guid><dc:creator><![CDATA[Tpau]]></dc:creator><pubDate>Sat, 05 Jun 2010 11:35:42 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 11:40:51 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">namespace mylib
{
template&lt;typename T&gt;
class myqueue
{
...
};

template&lt;typename Iter, typename T&gt;
Iter find(Iter first, Iter last, T value);

}
</code></pre>
<p>Bist du dir denn sicher, dass du deine eigenen Container und Iteratoren schreiben möchtest?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907256</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907256</guid><dc:creator><![CDATA[brotbernd]]></dc:creator><pubDate>Sat, 05 Jun 2010 11:40:51 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 12:00:34 GMT]]></title><description><![CDATA[<p>brotbernd schrieb:</p>
<blockquote>
<pre><code class="language-cpp">namespace mylib
{
template&lt;typename T&gt;
class myqueue
{
...
};

template&lt;typename Iter, typename T&gt;
Iter find(Iter first, Iter last, T value);

}
</code></pre>
<p>Bist du dir denn sicher, dass du deine eigenen Container und Iteratoren schreiben möchtest?</p>
</blockquote>
<p>Vielen Dank!</p>
<p>Naja die Container und Iteratoren schreib ich nur zur Uebung, weil wir sowas in der Klausur machen muessen, ansonsten wuerde ich gern drauf verzichten <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/1907265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907265</guid><dc:creator><![CDATA[Tpau]]></dc:creator><pubDate>Sat, 05 Jun 2010 12:00:34 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 12:22:47 GMT]]></title><description><![CDATA[<p>Wenn Du schon Iteratoren gebaut hast, wozu dann noch ein extra find anbieten? Dafür gibt es doch std::find, welches beliebige Vorwärts-Iteratoren annehmen kann. Das ist ja gerade der Witz an Iteratoren. Du musst die Algorithmen wie &quot;find&quot; nicht für jeden Container neu erfinden.</p>
<p>kk</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907280</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907280</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sat, 05 Jun 2010 12:22:47 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 12:25:06 GMT]]></title><description><![CDATA[<p>... es sei denn, die Datenstruktur ist eine spezielle, die die Daten speziell soritert hat oder so etwas ...</p>
<p>Aber MyQueue soll doch ein einfacher Sequenzcontainer sein, oder etwa nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907283</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907283</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sat, 05 Jun 2010 12:25:06 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 12:28:24 GMT]]></title><description><![CDATA[<p>krümelkacker schrieb:</p>
<blockquote>
<p>Wenn Du schon Iteratoren gebaut hast, wozu dann noch ein extra find anbieten? Dafür gibt es doch std::find, welches beliebige Vorwärts-Iteratoren annehmen kann. Das ist ja gerade der Witz an Iteratoren. Du musst die Algorithmen wie &quot;find&quot; nicht für jeden Container neu erfinden.</p>
<p>kk</p>
</blockquote>
<p>Naja, beliebig ist übertrieben. Die STL Algorithm erwarten einige Typdefinitionen im Iterator. Kann man sich entweder zusammensuchen was da benötigt wird oder mit boost iterator facade die Arbeit etwas erleichern.<br />
Es geht hier ja aber denke ich um eine Übung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907284</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907284</guid><dc:creator><![CDATA[brotbernd]]></dc:creator><pubDate>Sat, 05 Jun 2010 12:28:24 GMT</pubDate></item><item><title><![CDATA[Reply to STL Iteratoren Syntax Problem on Sat, 05 Jun 2010 12:41:51 GMT]]></title><description><![CDATA[<p>brotbernd schrieb:</p>
<blockquote>
<p>Naja, beliebig ist übertrieben.</p>
</blockquote>
<p>Kommt drauf an, was Du unter Iteratoren verstehst. Ich bezog mich mit &quot;Vorwärts-Iterator&quot; natürlich auf das Iterator-Konzept der Standardbibliothek.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1907288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1907288</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sat, 05 Jun 2010 12:41:51 GMT</pubDate></item></channel></rss>