<?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[Aufbau und Optimierungen von std:list...]]></title><description><![CDATA[<p>Hallo ihr,</p>
<p>std::list ist ja im prinzip eine stink normale verkettet bzw. doppel verkette list dessen elemente unterschiedliche typen behinhalten können. Welche Optimierungen wurden bei der implementation der std::list getroffen, das sie schneller ist als ne eigen progammierte verkettet list?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/191525/aufbau-und-optimierungen-von-std-list</link><generator>RSS for Node</generator><lastBuildDate>Sat, 26 Sep 2026 01:11:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/191525.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 04 Sep 2007 03:08:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 03:08:43 GMT]]></title><description><![CDATA[<p>Hallo ihr,</p>
<p>std::list ist ja im prinzip eine stink normale verkettet bzw. doppel verkette list dessen elemente unterschiedliche typen behinhalten können. Welche Optimierungen wurden bei der implementation der std::list getroffen, das sie schneller ist als ne eigen progammierte verkettet list?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358407</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358407</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Tue, 04 Sep 2007 03:08:43 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 05:16:38 GMT]]></title><description><![CDATA[<p>hola BorisDieKlinge</p>
<p>BorisDieKlinge schrieb:</p>
<blockquote>
<p>Hallo ihr,</p>
<p>std::list ist ja im prinzip eine stink normale verkettet bzw. doppel verkette list dessen elemente unterschiedliche typen behinhalten können. Welche Optimierungen wurden bei der implementation der std::list getroffen, das sie schneller ist als ne eigen progammierte verkettet list?</p>
</blockquote>
<p>std::list ist also template aufgebaut. dementsprechend hast du einsicht in den source. kannst also angucken was die anders machen als du.<br />
wenns um reine preformance geht sind die std::container nicht umbedingt das performanteste. haengt jedoch auch jeweils von der implementierung ab.<br />
wenn man auf bestimmte gegebenheiten und datentypen eine eigene liste implementiert, kann die durchaus performanter sein als die std::list.</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358411</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Tue, 04 Sep 2007 05:16:38 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 05:45:06 GMT]]></title><description><![CDATA[<p>BorisDieKlinge schrieb:</p>
<blockquote>
<p>Hallo ihr,</p>
<p>std::list ist ja im prinzip eine stink normale verkettet bzw. doppel verkette list <strong>dessen elemente unterschiedliche typen behinhalten können</strong>.</p>
</blockquote>
<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 />
Üblicherweise gibt der Template-Parameter den Element-Typ an. Das heisst,<br />
STL-Container enthalten Elemente <strong>gleichen</strong> Typs.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358416</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358416</guid><dc:creator><![CDATA[Redhead]]></dc:creator><pubDate>Tue, 04 Sep 2007 05:45:06 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 05:59:35 GMT]]></title><description><![CDATA[<p>ja ich meine damit auch template... es geht lediglich darum welceh optimieurng bezüglich travesion, einfügen/löschen der verketten elemente gemacht wurden... bzw. welche performance relevante dinge ich berücksichtigen müssgte, wenn ich eine eigene liste schreiben würde...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358420</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358420</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Tue, 04 Sep 2007 05:59:35 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 06:06:07 GMT]]></title><description><![CDATA[<p>Eigentlich ist die Frage schon falsch. std::list ist lediglich eine Spezifikation, wie eine Liste auszusehen hat, um dem Standard zu genügen. Ob diese schnell oder langsam ist, hängt von der spezifischen Implementierung ab.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358426</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Tue, 04 Sep 2007 06:06:07 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 10:47:49 GMT]]></title><description><![CDATA[<p>Viel mehr Performance kann man meistens raus holen, wenn man überlegt, ob es wirklich eine liste sein muss. Wie ist das Verhältnis Einfügen/Löschen zu Zugriff? Muss die Größe wirklich verändert werden können oder gibts ne Maximalgröße und es reicht, wenn man Objekte im Array verschiebt? Oder gibts ne ganz andere Struktur die viel besser geeignet ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358627</guid><dc:creator><![CDATA[moxomom]]></dc:creator><pubDate>Tue, 04 Sep 2007 10:47:49 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 10:57:08 GMT]]></title><description><![CDATA[<p>die frage ist, was schneller ist, ob man objekte in der liste verschiebt, oder irgendwo löscht und irgendwo anderes wieder anfügt..</p>
<p>Die Größe ist variable... man kann auch nich sagen in welchem bereich sich die anzahl der elemente bewegen...</p>
<p>es muss möglich sein schnell elemente in mitten der liste zu löschen bzw. anfügen..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358639</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Tue, 04 Sep 2007 10:57:08 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 11:23:04 GMT]]></title><description><![CDATA[<p>BorisDieKlinge schrieb:</p>
<blockquote>
<p>Welche Optimierungen wurden bei der implementation der std::list getroffen, das sie schneller ist als ne eigen progammierte verkettet list?</p>
</blockquote>
<p>Keine, weil das eine sinnlose Frage ist. Einerseits ist std::list aus sich des Standards nur eine Spezifikation, jede Form von Optimierung demzufolge eine Frage der konkreten Implementierung (demzufolge müsstest du schon die konkrete Standardbibliothek, auf die du dich beziehen willst, angeben). Zudem setzt ein solcher Vergleich voraus, das es diese &quot;eigene programmierte List&quot; bereits gibt, damit man relativ zu dieser optimieren kann. Eine Implementation der Standardbibliothek muss eine gute Lösung für sehr viele Programme bieten, häufig ist es bei extremen Optimierungen so, dass diese bestimmte Operationen auf Kosten anderer Operationen optimieren - das setzt aber eben Kenntnis der beabsichtigten Nutzung voraus, um damit netto einen Vorteil zu haben. Zudem lassen die Spezifikationen der Container (jedenfalls die der sequentiellen Container) wenig Spielraum - es ist nicht zu erwarten, dass eine gute eigene Implementierung, die gleiche Komplexitätsgarantien hat, gegenüber dem Standardtemplate signifikante Performancevor- oder nachteile hat (es mag eine kleine Ausnahme geben, wenn man selbst Movesemantik implmentieren kann - dafür gibt es gegenwärtig keine portable und generische Lösung). Nicht zuletzt gehen Probleme in diesem Bereich häufig auf den verwendeten Allokator zurück, und es ist völlig klar, das eine einzelne Allokatorstrategie nicht in allen Anwendungen optimale Performance bieten wird. Das ist dann aber eigentlich keine Frage des Containers als solchem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358665</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 04 Sep 2007 11:23:04 GMT</pubDate></item><item><title><![CDATA[Reply to Aufbau und Optimierungen von std:list... on Tue, 04 Sep 2007 11:27:25 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>Nicht zuletzt gehen Probleme in diesem Bereich häufig auf den verwendeten Allokator zurück, und es ist völlig klar, das eine einzelne Allokatorstrategie nicht in allen Anwendungen optimale Performance bieten wird. Das ist dann aber eigentlich keine Frage des Containers als solchem.</p>
</blockquote>
<p>Es hat vielmehr rein garnichts mit dem verwendeten Container zu tun, da der nur einen vorgegebenen Allocator benutzt. Die Allocator-Strategie kann also von aussen per Templateparameter vorgegeben werden ohne was an der Implementierung des Containers zu aendern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1358672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1358672</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 04 Sep 2007 11:27:25 GMT</pubDate></item></channel></rss>