<?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[HeapSort mit binärer Suche]]></title><description><![CDATA[<p>Ich versuche gerade den HeapSort mit binärer Suche zu programmmieren. Allerdings sind meine C++-Programmierkenntnisse mehr schlecht als recht.</p>
<p>Die Idee hinter dem Algorithmus ist die, die Indizes der größten Kinder im Baum in einem Array zu sichern. Damit hat man ein sortiertes Feld auf das man die binäre Suche anwenden kann um herauszufinden an welche Stelle das Wurzelelement absickern muss.</p>
<p>Mein Problem ist, dass es nicht wirklich funktioniert. Ich mache irgendwas falsch mit den Arrays und Pointern. Wie gesagt bin ich kein guter Programmierer. Ich habe nur versucht eine Idee in Code umzusetzen.</p>
<p>Wäre cool, wenn mir jemand aushelfen könnte...., Danke.</p>
<p>Hier der Code:</p>
<pre><code class="language-cpp">/*----------------------------------------------------------------------
 *
 * Binärer Heapsort
 *
 * Heapsort mit binärer Suche
 *
 * Copyright by Me :-)
 *----------------------------------------------------------------------
 */

#define MAX 100

// Variablen zur Laufzeitberechnung
int vergleich2=0, tausch2=0;
// Feld zur Laufzeitrueckgabe;
int *rueck2 = new int[2];
int depth = 0;
int indizesWerte[MAX]; // Das Array, das die Indizes der größten Kinder festhält
void mybinsearch(int[], int, int&amp;);
void __swap (messdaten *, messdaten *);

inline void myreheap(messdaten *feld, int len, int i)
{

   const int laenge = len;
   /***
   * k == das linke Kind
   * rechts == hält den Index des Elements an dessen Stelle das Wurzelelement gesetzt wird
   * indizesWerte == ist das Array das die Indize der größten Söhne hält
   */
   int k=2*i+1, links = 0;  

   indizesWerte[laenge];

   while(k + 1 &lt; len)
   {
	   if (feld[k+1] &gt; feld[k]){
		   vergleich2++;
		   indizesWerte[depth] = k++;
	   }
	   else {
		   indizesWerte[depth] = k;
	   }
      k=2*k+1;
      depth++;
    }

	mybinsearch(indizesWerte, i, links);

   /* moving keys upward */
   messdaten hlp = feld[indizesWerte[links&rsqb;&rsqb;;
   feld[indizesWerte[links&rsqb;&rsqb; = feld[i];
   while(indizesWerte[links] &gt; i)
     {

		 swap(feld[indizesWerte[links&rsqb;&rsqb;, hlp); tausch2++;
		 links--;
     }
}

/***
* messdaten *feld ist ein Pointer, der mal 10, 20, 30,... bis 100 Objekte der Klasse messdaten festhält.
* Die Klasse messdaten im Ausschnitt:
*
* class messdaten{
*	private:
*		int wert;
*	public:
*		messdaten();
*		messdaten(int);
*		void ausgabe()const;
*		~messdaten();
*		messdaten &amp;operator=(const messdaten &amp;ob2); //Zuweisungsoperator
*		bool operator &lt;=(const messdaten&amp; ob2);
*		bool operator &gt;=(const messdaten&amp; ob2);
*		bool operator &lt;(const messdaten&amp; ob2);
*		bool operator &gt;(const messdaten&amp; ob2);
*		void out();
*		int returnwert();
* };
*
*
*/
int* mybinaerheapsort(messdaten *feld, int len)
{
	int j;

  for(j = len/2; j &gt;= 0; j--)
    {myreheap(feld, len, j);
    }

  for(j = len - 1; j &gt; 0; j--)
    {swap(feld[0], feld[j]); tausch2++;
     myreheap(feld, j, 0);
    }
	rueck2[0]=vergleich2;
	rueck2[1]=tausch2;
	vergleich2 = 0, tausch2 = 0;
	return rueck2;
}

/***
* mybinsearch gibt mit &quot;links = r;&quot; eine Referenz zurück.
* &quot;links&quot; hält den Wert an dessen Stelle die Wurzel gesetzt werden muss.
*/
void mybinsearch(int* feld, int x, int &amp;links){
	int l = 0, r = feld.length - 1, i = 0;
	do{
		i = (l + r)/2;
		if (feld[i] &gt; x){
			vergleich2++;
			l = i + 1;
		}
		else
			r = i - 1;
                if (r &lt; 0) break;
	}while(!(l &gt; r) &amp;&amp; r &gt;= 0);
	links = r;
}
</code></pre>
<p>Achja, das ist die Compiler-Fehlermeldung:</p>
<pre><code>error C2228: Links von &quot;.length&quot; muss sich eine Klasse/Struktur/Union befinden.
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/243525/heapsort-mit-binärer-suche</link><generator>RSS for Node</generator><lastBuildDate>Sat, 19 Sep 2026 22:19:11 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/243525.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 17 Jun 2009 20:04:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Wed, 17 Jun 2009 20:58:05 GMT]]></title><description><![CDATA[<p>Ich versuche gerade den HeapSort mit binärer Suche zu programmmieren. Allerdings sind meine C++-Programmierkenntnisse mehr schlecht als recht.</p>
<p>Die Idee hinter dem Algorithmus ist die, die Indizes der größten Kinder im Baum in einem Array zu sichern. Damit hat man ein sortiertes Feld auf das man die binäre Suche anwenden kann um herauszufinden an welche Stelle das Wurzelelement absickern muss.</p>
<p>Mein Problem ist, dass es nicht wirklich funktioniert. Ich mache irgendwas falsch mit den Arrays und Pointern. Wie gesagt bin ich kein guter Programmierer. Ich habe nur versucht eine Idee in Code umzusetzen.</p>
<p>Wäre cool, wenn mir jemand aushelfen könnte...., Danke.</p>
<p>Hier der Code:</p>
<pre><code class="language-cpp">/*----------------------------------------------------------------------
 *
 * Binärer Heapsort
 *
 * Heapsort mit binärer Suche
 *
 * Copyright by Me :-)
 *----------------------------------------------------------------------
 */

#define MAX 100

// Variablen zur Laufzeitberechnung
int vergleich2=0, tausch2=0;
// Feld zur Laufzeitrueckgabe;
int *rueck2 = new int[2];
int depth = 0;
int indizesWerte[MAX]; // Das Array, das die Indizes der größten Kinder festhält
void mybinsearch(int[], int, int&amp;);
void __swap (messdaten *, messdaten *);

inline void myreheap(messdaten *feld, int len, int i)
{

   const int laenge = len;
   /***
   * k == das linke Kind
   * rechts == hält den Index des Elements an dessen Stelle das Wurzelelement gesetzt wird
   * indizesWerte == ist das Array das die Indize der größten Söhne hält
   */
   int k=2*i+1, links = 0;  

   indizesWerte[laenge];

   while(k + 1 &lt; len)
   {
	   if (feld[k+1] &gt; feld[k]){
		   vergleich2++;
		   indizesWerte[depth] = k++;
	   }
	   else {
		   indizesWerte[depth] = k;
	   }
      k=2*k+1;
      depth++;
    }

	mybinsearch(indizesWerte, i, links);

   /* moving keys upward */
   messdaten hlp = feld[indizesWerte[links&rsqb;&rsqb;;
   feld[indizesWerte[links&rsqb;&rsqb; = feld[i];
   while(indizesWerte[links] &gt; i)
     {

		 swap(feld[indizesWerte[links&rsqb;&rsqb;, hlp); tausch2++;
		 links--;
     }
}

/***
* messdaten *feld ist ein Pointer, der mal 10, 20, 30,... bis 100 Objekte der Klasse messdaten festhält.
* Die Klasse messdaten im Ausschnitt:
*
* class messdaten{
*	private:
*		int wert;
*	public:
*		messdaten();
*		messdaten(int);
*		void ausgabe()const;
*		~messdaten();
*		messdaten &amp;operator=(const messdaten &amp;ob2); //Zuweisungsoperator
*		bool operator &lt;=(const messdaten&amp; ob2);
*		bool operator &gt;=(const messdaten&amp; ob2);
*		bool operator &lt;(const messdaten&amp; ob2);
*		bool operator &gt;(const messdaten&amp; ob2);
*		void out();
*		int returnwert();
* };
*
*
*/
int* mybinaerheapsort(messdaten *feld, int len)
{
	int j;

  for(j = len/2; j &gt;= 0; j--)
    {myreheap(feld, len, j);
    }

  for(j = len - 1; j &gt; 0; j--)
    {swap(feld[0], feld[j]); tausch2++;
     myreheap(feld, j, 0);
    }
	rueck2[0]=vergleich2;
	rueck2[1]=tausch2;
	vergleich2 = 0, tausch2 = 0;
	return rueck2;
}

/***
* mybinsearch gibt mit &quot;links = r;&quot; eine Referenz zurück.
* &quot;links&quot; hält den Wert an dessen Stelle die Wurzel gesetzt werden muss.
*/
void mybinsearch(int* feld, int x, int &amp;links){
	int l = 0, r = feld.length - 1, i = 0;
	do{
		i = (l + r)/2;
		if (feld[i] &gt; x){
			vergleich2++;
			l = i + 1;
		}
		else
			r = i - 1;
                if (r &lt; 0) break;
	}while(!(l &gt; r) &amp;&amp; r &gt;= 0);
	links = r;
}
</code></pre>
<p>Achja, das ist die Compiler-Fehlermeldung:</p>
<pre><code>error C2228: Links von &quot;.length&quot; muss sich eine Klasse/Struktur/Union befinden.
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1728463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728463</guid><dc:creator><![CDATA[albix]]></dc:creator><pubDate>Wed, 17 Jun 2009 20:58:05 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Wed, 17 Jun 2009 20:33:38 GMT]]></title><description><![CDATA[<p>Schau mal wie ein Debugger funktioniert und debugge deinen Code, bringt ne Menge Erleuchtung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728473</guid><dc:creator><![CDATA[ProfiTipp]]></dc:creator><pubDate>Wed, 17 Jun 2009 20:33:38 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Wed, 17 Jun 2009 22:20:56 GMT]]></title><description><![CDATA[<p>ProfiTipp schrieb:</p>
<blockquote>
<p>Schau mal wie ein Debugger funktioniert und debugge deinen Code, bringt ne Menge Erleuchtung.</p>
</blockquote>
<p>Wenn man am Compiler nich vorbeikommt hilft n Debugger auch nich übermässig. <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=":/"
      alt="😕"
    /></p>
<p>@alibix: Versuche morgen moch was sinnvolles zum Thema zu lassen. Heut wirds eh nichts sinnvolles mehr. Aber das konnt ich mir nicht verkneifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728514</guid><dc:creator><![CDATA[ProfiTip an Profitip]]></dc:creator><pubDate>Wed, 17 Jun 2009 22:20:56 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 04:46:42 GMT]]></title><description><![CDATA[<p>ProfiTip an Profitip schrieb:</p>
<blockquote>
<p>ProfiTipp schrieb:</p>
<blockquote>
<p>Schau mal wie ein Debugger funktioniert und debugge deinen Code, bringt ne Menge Erleuchtung.</p>
</blockquote>
<p>Wenn man am Compiler nich vorbeikommt hilft n Debugger auch nich übermässig. <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=":/"
      alt="😕"
    /></p>
</blockquote>
<p>Den Compilerfehler hat er erst nach meinem Post dazu editiert. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> Mal auf die Uhrzeiten schauen, du Schlaumeier.</p>
<p>Pointer auf arrays haben kein .length, nimmt std::vector, wenn du das willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728538</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728538</guid><dc:creator><![CDATA[ProfiTipp]]></dc:creator><pubDate>Thu, 18 Jun 2009 04:46:42 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 13:19:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void mybinsearch(int* feld, int x, int &amp;links){ 
    int l = 0, r = feld.length - 1, i = 0;
</code></pre>
<p>ProfiTipp schrieb:</p>
<blockquote>
<p>Pointer auf arrays haben kein .length, nimmt std::vector, wenn du das willst.</p>
</blockquote>
<p>Oder übergib die Länge einfach noch extra mit</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728836</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Thu, 18 Jun 2009 13:19:52 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 14:14:17 GMT]]></title><description><![CDATA[<p>Ich hab nun ein wenig den Code geändert. Hier die Ausschnitte, die eine Änderung beinhalten:</p>
<pre><code class="language-cpp">// Variablen zur Laufzeitberechnung
int vergleich2=0, tausch2=0;
// Feld zur Laufzeitrueckgabe;
int *rueck2 = new int[2];
int depth = 0;

int mybinsearch(int[], int, int);
void __swap (messdaten *, messdaten *);

inline void myreheap(messdaten *feld, int len, int i)
{

   const int laenge = len;
   /***
   * k == das linke Kind
   * rechts == hält den Index des Elements an dessen Stelle das Wurzelelement gesetzt wird
   * indizesWerte == ist das Array das die Indize der größten Söhne hält
   */
   int k=2*i+1, links = 0;  

   // Das Array, das die Indizes der größten Kinder festhält
   int indizesWerte[laenge];

   while(k + 1 &lt; len)
   {
	   if (feld[k+1] &gt; feld[k]){
		   vergleich2++;
		   indizesWerte[depth] = k++;
	   }
	   else {
		   indizesWerte[depth] = k;
	   }
      k=2*k+1;
      depth++;
    }
.....
.....
.....
</code></pre>
<p>UND:</p>
<pre><code class="language-cpp">int mybinsearch(int* feld, int x, int length){
	int l = 0, r = length, i = 0;
	do{
		i = (l + r)/2;
		if (feld[i] &gt; x){
			vergleich2++;
			l = i + 1;
		}
		else
			r = i - 1;
		if (r &lt; 0) break;
	}while(!(l &gt; r) &amp;&amp; r &gt;= 0);
	return r;
}
</code></pre>
<p>Und das ergibt diese Fehlermeldung:</p>
<pre><code>error C2057: Konstanter Ausdruck erwartet // Gilt für die Zeile 22 im ersten C++-Code Block
error C2466: Zuordnung eines Arrays der konstanten Größe 0 nicht möglich.
error C2133: 'indizesWerte': Unbekannte Größe
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1728877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728877</guid><dc:creator><![CDATA[albix]]></dc:creator><pubDate>Thu, 18 Jun 2009 14:14:17 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 14:31:13 GMT]]></title><description><![CDATA[<p>albix schrieb:</p>
<blockquote>
<p>...</p>
</blockquote>
<p>Mal paar allg. Anmerkungen und die Lösung deines Problems:</p>
<pre><code class="language-cpp">// Feld zur Laufzeitrueckgabe;
int *rueck2 = new int[2];
</code></pre>
<p>wieso hier new[] ?<br />
das delete[] seh ich auch nirgendwo -&gt; speicherleck</p>
<p>allg. sind globale variablen nicht gerad hübsch...</p>
<pre><code class="language-cpp">int mybinsearch(int[], int, int);
void __swap (messdaten *, messdaten *);
</code></pre>
<p>1. In Prototypen müssen die Parameter zwar nicht benannt werden, aber es nicht zu machen ist hässlich - wenn ich mal schnell gucken will, wie ich die Fkt aufzurufen habe, will ich nicht erst die *.cpp suchen und dann dort gucken, was ich übergeben muss sondern es bequem im header nachgucken können!</p>
<p>2. bezeichner mit 2 unterstrichen am anfang sind lt. standard für den compiler reserviert - z.bsp. für makros - ist bei swap auch gar nicht mal sooo unwahrscheinlich.<br />
außerdem klingt die fkt so, als ob es sie bereits geben würde ^^<br />
hier hast du nen guten überblick über die c++ standard bibliothek<br />
<a href="http://www.cplusplus.com/reference/" rel="nofollow">http://www.cplusplus.com/reference/</a><br />
unter algorithm<br />
gibt es beispielsweise auch std::swap...</p>
<pre><code class="language-cpp">inline void myreheap(messdaten *feld, int len, int i)
{
   const int laenge = len;
   int indizesWerte[laenge];
</code></pre>
<p>geht so nicht, da laenge nicht zur compilezeit bekannt ist...<br />
also wirst du wohl entweder new[] / delete[] nutzen müssen oder nen Array nehmen müssen, was auf jeden Fall groß genug ist - <code>int indizesWerte[MAX]</code><br />
aber auch hier hat die standard-library wieder eine gute (bessere) alternative:<br />
vector</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728894</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Thu, 18 Jun 2009 14:31:13 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 17:22:14 GMT]]></title><description><![CDATA[<p>Ich habe nun anstatt eines Arrays den std::vektor genommen. Allerdings habe ich damit noch so meine Probleme. Ich dachte vektor wäre dynamisch und wächst von alleine wenn man neue Werte einfügt. Der Code hier scheint aber nicht zu stimmen:</p>
<pre><code class="language-cpp">int depth = 0;
inline void myreheap(messdaten *feld, int len, int i)
{

   //const int laenge = len;
   /***
   * k == das linke Kind
   * rechts == hält den Index des Elements an dessen Stelle das Wurzelelement gesetzt wird
   * indizesWerte == ist das Array das die Indize der größten Söhne hält
   */
   int k=2*i+1, links = 0;  

   // Das Array, das die Indizes der größten Kinder festhält
   //int indizesWerte[laenge];
   std::vector&lt;int&gt; v(depth);

   while(k + 1 &lt; len)
   {
	   if (feld[k+1] &gt; feld[k]){
		   vergleich2++;
		   //indizesWerte[depth] = k++;
		   v[depth] = k++;
	   }
	   else {
		   //indizesWerte[depth] = k;
		   v[depth] = k;
	   }
      k=2*k+1;
      depth++;
    }
......
......
......
</code></pre>
<p>Die Compiler liefert direkt keine Fehlermeldung, aber sobald zum ersten mal etwas in den vektor eingefügt werden soll erscheint ein Debug-Fehler-Fenster:</p>
<pre><code>Debug Assertion Failed!
......
Expression: vector subscript out of range
</code></pre>
<p>Wie füge ich nun Werte in den vektor ein? Ich weiß ja zuvor nicht wieviele Werte eingefügt werden, da von vornherein nicht klar ist, wieviele Kinder und Kindes-Kinder der Baum hat. Der vektor soll dynamisch wachsen und am Schluss die Anzahl der Elemente ausgeben....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728979</guid><dc:creator><![CDATA[albix]]></dc:creator><pubDate>Thu, 18 Jun 2009 17:22:14 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 17:31:20 GMT]]></title><description><![CDATA[<p>Schau doch mal in die <a href="http://magazin.c-plusplus.net/artikel/Aufbau%20der%20STL%20-%20Teil%201%3A%20Container" rel="nofollow">Foren-Artikel</a> oder auf <a href="http://www.cplusplus.com" rel="nofollow">www.cplusplus.com</a>. Es macht nicht viel Sinn, wenn wir dir hier die Funktionsweise der STL erklären.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728983</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 18 Jun 2009 17:31:20 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 17:41:24 GMT]]></title><description><![CDATA[<p>Ok vielen Dank. Ich war wohl etwas voreilig. Habs nun geschnallt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>std::vektor&lt;int&gt; v;<br />
v.push_back(Wert);</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728988</guid><dc:creator><![CDATA[albix]]></dc:creator><pubDate>Thu, 18 Jun 2009 17:41:24 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 17:50:02 GMT]]></title><description><![CDATA[<p>das hier hast du hoffentlich auch wieder geändert:<br />
<code>std::vector&lt;int&gt; v(depth);</code><br />
macht zwar nix unerwartetes, aber ist unsinnig ^^</p>
<p><code>std::vector&lt;int&gt; name;</code><br />
reicht völlig - wobei du als name hoffentlich nen aussagekräftigeren als v genommen hast?! ^^</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728993</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728993</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Thu, 18 Jun 2009 17:50:02 GMT</pubDate></item><item><title><![CDATA[Reply to HeapSort mit binärer Suche on Thu, 18 Jun 2009 17:54:15 GMT]]></title><description><![CDATA[<p>Ich rate dir wirklich, dich ausführlich mit dem Artikel zu befassen. Die STL-Container sind etwas, das man in C++ ständig benötigt. Sie sind auch recht mächtig und komfortabel, es lohnt sich also durchaus, etwas Zeit zu investieren.</p>
<p>Übrigens: Es heisst <code>std::ve</code>  <code>c</code>  <code>tor</code> . <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1728997</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1728997</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 18 Jun 2009 17:54:15 GMT</pubDate></item></channel></rss>