<?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[Iterator Null]]></title><description><![CDATA[<p>Hi,</p>
<p>Eine Funktion gibt Daten vom Typ vector&lt;float&gt;::iterator zurück. Was kann ich im Fehlerfall zurückgeben? Geht folgendes:<br />
return(NULL); bzw. return((vector&lt;float&gt;::iterator)0);</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/288459/iterator-null</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 23:15:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/288459.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 17 Jun 2011 06:28:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 06:28:43 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>Eine Funktion gibt Daten vom Typ vector&lt;float&gt;::iterator zurück. Was kann ich im Fehlerfall zurückgeben? Geht folgendes:<br />
return(NULL); bzw. return((vector&lt;float&gt;::iterator)0);</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079562</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079562</guid><dc:creator><![CDATA[Jeffson]]></dc:creator><pubDate>Fri, 17 Jun 2011 06:28:43 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 06:50:56 GMT]]></title><description><![CDATA[<p>- eine Exception werfen<br />
- deinVector.end()</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079565</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079565</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Fri, 17 Jun 2011 06:50:56 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 07:12:26 GMT]]></title><description><![CDATA[<p>Man kann im allgemeinen davon ausgehen, dass Iteratoren keine Zeiger sind. Es dürfte sich zwar bei den meisten Implementierungen von std::vector durchgesetzt haben, dass iterator ein T* ist, aber verlassen würde ich mich darauf nicht. (Der Standard sagt nichts darüber aus, was iterator konkret sein muss.)</p>
<p>end() Zurückgeben ist oft bei Algorithmen sinnvoll, z.B. bei einer Suche.<br />
Exceptions habe ich im Zusammenhang mit Iteratoren nocht nicht verwendet, können aber unter Umständen auch sinnvoll sein.<br />
Vielleicht tut's auch ein assert(), kommt auf deinen konkreten Fall an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079582</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Fri, 17 Jun 2011 07:12:26 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 08:25:43 GMT]]></title><description><![CDATA[<p>Wenn es keine Exception sein soll ist am besten <code>container.end()</code> zurück zu geben (wie bereits schon geschrieben).<br />
Grund: Mann muss immer einen definierten Iterator zurück geben. Definierte Iteratoren zeigen immer auf bestehende Elemente eines Containers (Als &quot;Fehlerrückgabewert&quot; natürlich schlecht), bis auf eine Ausnahme : Der Iterator der auf <code>end()</code> zeigt. Der zeigt sozusagen auf das Element hinter dem letzten Element (das es ja in wirklichkeit garnicht gibt). Wie das intern dargestellt wird ist implementationsspezifisch - braucht auch niemand zu interessieren - es geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079617</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079617</guid><dc:creator><![CDATA[tunichtgut]]></dc:creator><pubDate>Fri, 17 Jun 2011 08:25:43 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 08:51:11 GMT]]></title><description><![CDATA[<p>Manche Container definieren auch einen eigenen Iterator != end() dafür, z.B. npos bei std::string.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079641</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 17 Jun 2011 08:51:11 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 09:10:51 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Manche Container definieren auch einen eigenen Iterator != end() dafür, z.B. npos bei std::string.</p>
</blockquote>
<p>npos ist kein Iterator, sondern eine numerische Konstante.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079647</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079647</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Fri, 17 Jun 2011 09:10:51 GMT</pubDate></item><item><title><![CDATA[Reply to Iterator Null on Fri, 17 Jun 2011 09:14:35 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Manche Container definieren auch einen eigenen Iterator != end() dafür, z.B. npos bei std::string.</p>
</blockquote>
<p>npos ist kein Iterator, sondern eine numerische Konstante.</p>
</blockquote>
<p>Ups, stimmt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2079650</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2079650</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 17 Jun 2011 09:14:35 GMT</pubDate></item></channel></rss>