<?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 und ausführgeschwindigkeit]]></title><description><![CDATA[<p>hey</p>
<p>die stl ist vom universellen design her ja schön und gut, wenn man aber ausführgeschwindigkeit will, ist es dann wirklich schlau, iteratoren usw zu verwenden statt seine vektoren manuell zu indizieren z.b.?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/320964/stl-und-ausführgeschwindigkeit</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 13:14:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/320964.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 18 Oct 2013 18:17:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:17:29 GMT]]></title><description><![CDATA[<p>hey</p>
<p>die stl ist vom universellen design her ja schön und gut, wenn man aber ausführgeschwindigkeit will, ist es dann wirklich schlau, iteratoren usw zu verwenden statt seine vektoren manuell zu indizieren z.b.?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361233</guid><dc:creator><![CDATA[significant speed]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:17:29 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:19:27 GMT]]></title><description><![CDATA[<p>Na dann erklär mal, wo der Performance-Unterschied zwischen einem Zeiger und einem Vektor-Iterator ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361234</guid><dc:creator><![CDATA[SG1]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:19:27 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:20:40 GMT]]></title><description><![CDATA[<p>STL = Kein Runtime-Overhead. Prüf es selbst, wird alles wegoptimiert (ausser natürlich im Debug-Modus, da ist die STL signifikant langsamer, weil jeder Zugriff geprüft wird).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361236</guid><dc:creator><![CDATA[z.b.]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:20:40 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:28:18 GMT]]></title><description><![CDATA[<p>naja ich hab immer ein schlechtes gewissen wenn ich instanzen von iteratoren anlege, diese dann mit std::advance verschiebe und diese dann dereferenziere statt dass ich einfach den operator[] nutze (bei arrays und vectoren).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361239</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361239</guid><dc:creator><![CDATA[significant speed]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:28:18 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:29:44 GMT]]></title><description><![CDATA[<p>std::vector&lt;T&gt;::iterator ist in manchen Implementierungen im Releasebuild einfach nur ein T*; kein Overhead.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361240</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361240</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:29:44 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:32:56 GMT]]></title><description><![CDATA[<p>jo okay, ihr habt mich überzeugt, danke. (:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361241</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361241</guid><dc:creator><![CDATA[significant speed]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:32:56 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:38:34 GMT]]></title><description><![CDATA[<p>significant speed schrieb:</p>
<blockquote>
<p>naja ich hab immer ein schlechtes gewissen wenn ich instanzen von iteratoren anlege, diese dann mit std::advance verschiebe und diese dann dereferenziere statt dass ich einfach den operator[] nutze (bei arrays und vectoren).</p>
</blockquote>
<p><code>std::advance</code> ist für Random-Access-Iteratoren entsprechend spezialisiert (und damit meine ich keine Template-Spezialisierung, intern wird da Tag-Dispatching durchgeführt).</p>
<p><code>__gnu_cxx::__normal_iterator</code> kapselt - bei entsprechendem Template-Argument - nur die Operationen auf einen Zeiger, das wird definitiv alles geinlined.</p>
<p>Und der Index-Operator funktioniert genauso: <code>*(E1 + E2)</code> .</p>
<p>Sollte gleich schnell sein, aber dafür verbürge ich mich nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361245</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:38:34 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:39:25 GMT]]></title><description><![CDATA[<p>significant speed schrieb:</p>
<blockquote>
<p>naja ich hab immer ein schlechtes gewissen wenn ich instanzen von iteratoren anlege, diese dann mit std::advance verschiebe und diese dann dereferenziere statt dass ich einfach den operator[] nutze (bei arrays und vectoren).</p>
</blockquote>
<p>Da kannste machen, wie Du willst. Ist gleich schnell.</p>
<p>Manchmal braucht man mit op[] aber eine Variable weniger! Zum Beispiel kein end, weil die Größe eh compilezeitkonstant ist, end aber nicht. Dann ist op[] potentiell schneller, weil eine weiter außen liegende Variable in ein Register hüpfen kann. Das AMD-Optimierungs-Handbuch legt da viel Wert drauf. Denke aber, die Compiler kennen den Trick auch schon lange, also schreib, was für Dich besser lesbar ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361246</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361246</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:39:25 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 18:52:12 GMT]]></title><description><![CDATA[<blockquote>
<p>Manchmal braucht man mit op[] aber eine Variable weniger! Zum Beispiel kein end, weil die Größe eh compilezeitkonstant ist, end aber nicht.</p>
</blockquote>
<p>Wir reden von <code>std::vector</code> , nicht von einem (echten) Array.</p>
<p>Edit: Nein, auch von Arrays war die Rede. Gut, ist berechtigt. Andererseits sind die Zeiger auf Anfang und Ende eines echten Arrays doch auch konstant, also zumindest konstant genug um Optimierungsspielraum zu lassen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361251</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 18 Oct 2013 18:52:12 GMT</pubDate></item><item><title><![CDATA[Reply to stl und ausführgeschwindigkeit on Fri, 18 Oct 2013 19:16:09 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<blockquote>
<p>Manchmal braucht man mit op[] aber eine Variable weniger! Zum Beispiel kein end, weil die Größe eh compilezeitkonstant ist, end aber nicht.</p>
</blockquote>
<p>Wir reden von <code>std::vector</code> , nicht von einem (echten) Array.</p>
<p>Edit: Nein, auch von Arrays war die Rede. Gut, ist berechtigt. Andererseits sind die Zeiger auf Anfang und Ende eines echten Arrays doch auch konstant, also zumindest konstant genug um Optimierungsspielraum zu lassen?</p>
</blockquote>
<p>Lies Dein Maschinensprachbuch schnell fertig und schreib nochmal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2361260</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2361260</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 18 Oct 2013 19:16:09 GMT</pubDate></item></channel></rss>