<?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, TR1 und andere Sachen]]></title><description><![CDATA[<p>Das Code-Segment von unskilled hat mir sehr gefallen, wo bekomme ich meeeehr... Literatur davon? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<pre><code class="language-cpp">#include &lt;iostream&gt;  //std::cin / std::cout / std::endl
#include &lt;iterator&gt;  //std::istream_iterator
#include &lt;numeric&gt;   //std::accumulate

int main()
{
  std::cout &lt;&lt; std::accumulate(std::istream_iterator&lt;int&gt; (std::cin),
                                 std::istream_iterator&lt;int&gt;(),
                                 0) &lt;&lt; std::endl;
}
</code></pre>
<p>Die Funktionsweise ist einfach phantastisch! Und so simpel wie genial! Wo gibt es Literatur dazu, Englisch oder Deutsch, egal.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/249892/stl-tr1-und-andere-sachen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 06:03:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/249892.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 13 Sep 2009 17:12:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:15:51 GMT]]></title><description><![CDATA[<p>Das Code-Segment von unskilled hat mir sehr gefallen, wo bekomme ich meeeehr... Literatur davon? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<pre><code class="language-cpp">#include &lt;iostream&gt;  //std::cin / std::cout / std::endl
#include &lt;iterator&gt;  //std::istream_iterator
#include &lt;numeric&gt;   //std::accumulate

int main()
{
  std::cout &lt;&lt; std::accumulate(std::istream_iterator&lt;int&gt; (std::cin),
                                 std::istream_iterator&lt;int&gt;(),
                                 0) &lt;&lt; std::endl;
}
</code></pre>
<p>Die Funktionsweise ist einfach phantastisch! Und so simpel wie genial! Wo gibt es Literatur dazu, Englisch oder Deutsch, egal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777724</guid><dc:creator><![CDATA[DeepCopy]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:15:51 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:22:53 GMT]]></title><description><![CDATA[<p>Aus der Standardlibrary und Boost.</p>
<p>EDIT:<br />
Öhy, das ist ja doof, hast deinen Beitrag ja editiert^^.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777726</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777726</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:22:53 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:20:30 GMT]]></title><description><![CDATA[<p>Ich kenne kein Buch, das sich speziell mit der STL und exzessiver Programmierung damit befasst.</p>
<p>Was aber sicher hilft, und wie wohl viele Leute solche Dinge gelernt haben, ist einfach durch ausprobieren. Ich stöber manchmal auch auf <a href="http://www.cplusplus.com" rel="nofollow">www.cplusplus.com</a> herum, schaue mir ein paar STL-Algorithmen und Funktionsobjekte an, und versuche sie einigermassen sinnvoll einzusetzen. <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>
<p>Oft hat man ja auch einen konkreten Anwendungsfall (z.B. tue etwas für alle Elemente einer Liste), und für viele Fälle gibt es schon vorgefertigte Funktionen. Auch hier im Forum kommen ab und zu solche Beispiele, von denen man immer wieder lernen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777732</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:20:30 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:23:08 GMT]]></title><description><![CDATA[<p>Das ist sehr schade <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Ich dachte dabei an eine Ausarbeitung dieser Themen</p>
<pre><code>complex
exception
functional
iterator
limits
locale
memory
new
numeric
stdexcept
typeinfo
utility
valarray
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1777734</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777734</guid><dc:creator><![CDATA[DeepCopy]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:23:08 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:25:04 GMT]]></title><description><![CDATA[<p>Das ist die Standardbibliothek. Steht großenteils im Stroustrup was darüber. Literatur über Boost kenne ich (leider) nicht. In Effektiv C++ Programmieren wird etwas auf TR1 eingegangen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777736</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777736</guid><dc:creator><![CDATA[Ad aCTa]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:25:04 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:27:59 GMT]]></title><description><![CDATA[<p>Ich kann Deine Begeisterung nicht teilen.<br />
Aber Scott teilt sie in &quot;Effective STL&quot;.<br />
<a href="https://duckduckgo.com/?q=isbn+0201749629&amp;cppnetbooks" rel="nofollow">Effective STL | ISBN: 0201749629</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777737</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777737</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:27:59 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:28:51 GMT]]></title><description><![CDATA[<p>Also allem voran an Literatur, würde ich das Werk von Stroustrup empfehlen, da dort wirklich zu so ziemlich allem etwas steht und dazu auch noch übliche Implementierungen. Dann gibt es noch Effective STL von Meyers:<br />
<a href="http://www.amazon.com/Effective-STL-Specific-Standard-Template/dp/0201749629" rel="nofollow">http://www.amazon.com/Effective-STL-Specific-Standard-Template/dp/0201749629</a></p>
<p>Kenne das Buch allerings nicht, werde es mir aber irgendwann wahrscheinlich auch mal noch zulegen.</p>
<p>Für boost ist wahrscheinlich die Webseite und die spezifischen Dokumentationen die beste Wahl.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777739</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777739</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:28:51 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:32:57 GMT]]></title><description><![CDATA[<p>Für Boost kenne ich das:<br />
<a href="https://duckduckgo.com/?q=isbn+0321133544&amp;cppnetbooks" rel="nofollow">Beyond the C++ Standard Library | ISBN: 0321133544</a></p>
<p>Aber das hat nicht mehr viel mit STL zu tun, da wird eher auf Dinge wie Regex, Variant, Bind - also nützliche Boost-Bibliotheken - eingegangen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777744</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:32:57 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 17:37:44 GMT]]></title><description><![CDATA[<p>Für die Standardbibliothek finde ich das hier recht gut<br />
<a href="https://duckduckgo.com/?q=isbn+0201379260&amp;cppnetbooks" rel="nofollow">The C++ Standard Library | ISBN: 0201379260</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777749</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777749</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Sun, 13 Sep 2009 17:37:44 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 18:06:52 GMT]]></title><description><![CDATA[<p>DeepCopy schrieb:</p>
<blockquote>
<p>Das ist sehr schade <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Ich dachte dabei an eine Ausarbeitung dieser Themen</p>
</blockquote>
<p>Das Meiste auf der Liste ist entweder verdammt speziell oder selbst erklärend. oder brauchst du nicht. Für das, was du da so cool findest, reicht Wissen über die STL, also der Zusammenhang zwischen Containern, iteratoren und Algorithmen.</p>
<p>Ich erlaube mir mal eine Einteilung:</p>
<p>Wichtig:</p>
<pre><code>functional
iterator
memory(nur(!) std::auto_ptr)
limits(nur(!) std::numeric_limits)
numeric

exception
</code></pre>
<p>Passende Bücher: effective STL und vor allem für Exceptions als weiterführene Literatur Exceptional C++. Wie Exceptions funktionieren, also Try/catch etc, steht in jedem Anfängerbuch. Numeric ist eigentlich auch nicht mehr als 4 Funktionen. Da reicht eine Referenz wir <a href="http://www.sgi.com/tech/stl" rel="nofollow">www.sgi.com/tech/stl</a></p>
<p>Selbsterklärend:</p>
<pre><code>complex
stdexcept
utility (aka std::pair)
</code></pre>
<p>Komplexe Zahlen sind schon recht speziell, und wenn man sie wirklich braucht, weis man eh wie sie funktionieren. Von da an ist das nicht mehr als Funktionen nachschlagen. Der Rest ist auch ziemlich einfach.</p>
<p>speziell:</p>
<pre><code>locale
new (alles was über die simple Nutzung von new/delete hinaus geht)
typeinfo
valarray
rest aus memory und limits
</code></pre>
<p>Das Zeug ist wirklich so extrem speziell... ich glaube, die meisten Leute hier haben noch keines dieser Features wirklich verwendet. Und insbesondere locales sind der Horror. Hier reicht einmal ein kurzüberblick darüber, was die Header enthalten, oder wozu die Klassen da sind. Mehr ist in den meisten Fällen Sinnfrei, das vergisst man eh wieder, bis mans in 10 Jahren vielleicht einmal braucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777773</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777773</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sun, 13 Sep 2009 18:06:52 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 18:37:29 GMT]]></title><description><![CDATA[<p>Also typeid/type_info, sowie placement new/placement delete würde ich nicht als sooooooo speziell/ bezeichnen.</p>
<blockquote>
<p>Wie Exceptions funktionieren, also Try/catch etc, steht in jedem Anfängerbuch.</p>
</blockquote>
<p>Oft fehlt bloss leider eine Erklärung wie man damit vernünftig umgehen kann. Einige Bücher erwähnen nichtmal dass man aufpassen muss, wenn man Exception-sicheren Code schreiben will.<br />
Andere erwähnen es anhand eines Kindergarten-Beispiels, das jeder im Schlaf richtig hinbekommt, und bringen dann im weiteren Verlauf des Buchs tonnenweise Beispielcodes die eben gerade <em>nicht</em> Exception-sicher sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777790</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 13 Sep 2009 18:37:29 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 18:47:10 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Also typeid/type_info, sowie placement new/placement delete würde ich nicht als sooooooo speziell/ bezeichnen.</p>
</blockquote>
<p>Naja, placement new ist ja fast nur dazu da, dass man die Standardcontainer ordentlich implementieren kann. Und da es schon recht selten vorkommt, dass man einen komplett neuen Container entwickeln muss, der nicht auf den vorhandenen aufsetzen kann, ist das schon ziemlich speziell. Und einen anderen Einsatzzweck, als polymorphe Klassenhierarchien zu serialisieren habe ich auch für typeid/typeinfo noch nicht gefunden. Hier gestehe ich aber auch durchaus Unwissen meinerseits ein, falls es da noch wirklich wichtige Anwendungsfälle gibt :).</p>
<blockquote>
<p>Oft fehlt bloss leider eine Erklärung wie man damit vernünftig umgehen kann. Einige Bücher erwähnen nichtmal dass man aufpassen muss, wenn man Exception-sicheren Code schreiben will.</p>
</blockquote>
<p>Deswegen ist ja auch Exceptional C++ aufgeführt :). Das müsste so ziemlich alle wichtigen Fallstricke auch aus vielen anderen Bereichen abdecken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777797</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sun, 13 Sep 2009 18:47:10 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 18:52:45 GMT]]></title><description><![CDATA[<p>und valarray ist sowieso komplett vermurkst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777799</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777799</guid><dc:creator><![CDATA[valarray]]></dc:creator><pubDate>Sun, 13 Sep 2009 18:52:45 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Sun, 13 Sep 2009 19:08:21 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/5202">@otze</a>:<br />
placement new kann man bei gewissen optimierungen schön brauchen.<br />
und typeid/type_info kann man recht schön verwenden um &quot;bessere&quot; debug-messages/error-messages auszugeben.<br />
oder auch wenn man &quot;type hiding&quot; ala boost::any irgendwo macht, und dann irgendwo den typ checken will/muss.</p>
<p>zugegeben aber alles low-level sachen. und bis auf die &quot;schönen fehlermeldungen&quot; auch dinge, wo es meist schon eine schöne, fertige implementierung gibt, z.b. in der boost, die man einfach verwenden kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777806</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 13 Sep 2009 19:08:21 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Mon, 14 Sep 2009 01:50:42 GMT]]></title><description><![CDATA[<p>Fange hier erstmal an zu lesen:<br />
<a href="http://magazin.c-plusplus.net/artikel/Aufbau%20der%20STL%20-%20Teil%201%3A%20Container" rel="nofollow">Aufbau der STL - Teil 1: Container</a><br />
Natürlich Teil 2 und 3 auch. Danach holst du dir das empfohlene Buch von Braunstein und nebenbei liest du dann Effective STL.</p>
<p>Danach solltest du ordentlich fitt sein ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1777929</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1777929</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 14 Sep 2009 01:50:42 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Mon, 14 Sep 2009 08:51:09 GMT]]></title><description><![CDATA[<p>Ich würds einfach so halten, dass du wenn du über eine Anwendung stolperst, zu der du denkst &quot;da müsste es doch einen fertigen Algorithmus/Container/Implementierung für geben&quot;, du erst einmal in der Referenz deiner Wahl (z.B. <a href="http://www.cplusplus.com" rel="nofollow">www.cplusplus.com</a>) nachschaust. Zusätzlich kannst du natürlich auch erst einmal dort durchblättern und stöbern (wie Nexus es schon beschrieben hat). Du musst das alles nicht aus dem FF können, es reicht wenn du im Fall dass du es brauchst weißt, dass es da was in der Richtung gibt. Zu den einzelnen Boost Bibliotheken lese ich auch bei Interesse immer mal die Doku/Tutorials zu der einen oder anderen Bibliothek durch und um ein Gefühl dafür zu bekommen programmiere ich ein oder zwei kleinere Anwendungen, die die Bibliothek verwenden oder schreibe einen <a href="http://magazin.c-plusplus.net/artikel/%DCberladung%20von%20Operatoren%20in%20CPlusPlus%20%28Teil%202%29%20-%20Einf%FChrung%20in%20boost%3A%3Aoperators" rel="nofollow">Artikel</a> drüber.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778026</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778026</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Mon, 14 Sep 2009 08:51:09 GMT</pubDate></item><item><title><![CDATA[Reply to STL, TR1 und andere Sachen on Mon, 14 Sep 2009 12:51:48 GMT]]></title><description><![CDATA[<p>Ich denke das wird mir reichen um mich erstmal zu orientieren, das war alles schon sehr aufschlussreich und hilfreich zugleich,</p>
<p>vielen Dank sagt DeepCopy <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>
<p>** Ihr seit die Besten! **</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778193</guid><dc:creator><![CDATA[DeepCopy]]></dc:creator><pubDate>Mon, 14 Sep 2009 12:51:48 GMT</pubDate></item></channel></rss>