<?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[Vektor-Klasse und dynamisch allokierter Speicher]]></title><description><![CDATA[<p>Hallo,ihr alle.<br />
Also meine erste Frage ist folgende:<br />
Wenn Speicher dynamisch allokiert wird z.B. mit malloc(),wird der Speicher dann zum Programmende freigegeben.<br />
Man muss ihn doch nur explizit z.B. durch Free() freigeben,wenn man ihn nicht mehr benötigt.</p>
<p>Ok,das zweite ist:<br />
Ich mache mich an eine Vektor-Klase und das einfachst diese zu implementieren,wäre so:<br />
Der benötigte Speicher,wird dynamisch allokiert.<br />
Und falls man die Vektor-Größe z.B. neu setzt,dann werden zuerst,die Daten kopiert,dann der alte Speicher freigegeben und der neue angefordert wird und am Schluss die Daten in diesen eingefügt werden.<br />
Da ich die Vektor-Klasse hauptsächlich für die Daten von 3D-Objekten benutze und diese normalerweise öfters im Programm vorkommen,könnte dies zu einer Speicherfragmentierung kommen.<br />
Aber wenn der Speicher zur Laufzeit nicht oder selten freigegeben wird,da er zur ganzen Laufzeit genutzt wird,würde es vielleicht nicht so sehr zu einer Speicherfragmentierung kommen.</p>
<p>Falls die Speicherfragmentierung zu sehr zum Verhängnis wird,also wenn ihr es sagt,dann werde ich die Vektor-Klasse anders implementieren.<br />
Aber es wäre halt der einfachste Weg... <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>
]]></description><link>https://www.c-plusplus.net/forum/topic/316787/vektor-klasse-und-dynamisch-allokierter-speicher</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Jul 2026 13:56:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/316787.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 16 May 2013 17:02:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:02:01 GMT]]></title><description><![CDATA[<p>Hallo,ihr alle.<br />
Also meine erste Frage ist folgende:<br />
Wenn Speicher dynamisch allokiert wird z.B. mit malloc(),wird der Speicher dann zum Programmende freigegeben.<br />
Man muss ihn doch nur explizit z.B. durch Free() freigeben,wenn man ihn nicht mehr benötigt.</p>
<p>Ok,das zweite ist:<br />
Ich mache mich an eine Vektor-Klase und das einfachst diese zu implementieren,wäre so:<br />
Der benötigte Speicher,wird dynamisch allokiert.<br />
Und falls man die Vektor-Größe z.B. neu setzt,dann werden zuerst,die Daten kopiert,dann der alte Speicher freigegeben und der neue angefordert wird und am Schluss die Daten in diesen eingefügt werden.<br />
Da ich die Vektor-Klasse hauptsächlich für die Daten von 3D-Objekten benutze und diese normalerweise öfters im Programm vorkommen,könnte dies zu einer Speicherfragmentierung kommen.<br />
Aber wenn der Speicher zur Laufzeit nicht oder selten freigegeben wird,da er zur ganzen Laufzeit genutzt wird,würde es vielleicht nicht so sehr zu einer Speicherfragmentierung kommen.</p>
<p>Falls die Speicherfragmentierung zu sehr zum Verhängnis wird,also wenn ihr es sagt,dann werde ich die Vektor-Klasse anders implementieren.<br />
Aber es wäre halt der einfachste Weg... <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2323796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323796</guid><dc:creator><![CDATA[coder++]]></dc:creator><pubDate>Thu, 16 May 2013 17:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:06:02 GMT]]></title><description><![CDATA[<p>Was spricht gegen std::vector?<br />
Oder meinste mathematischen Vektoren? Dafür gibts std::valarray.<br />
Oder meinst du Vektor als mathematisch/physikalisches Tupel aus n-Elementen?<br />
Da ist es nicht notwendig Speicher zu allozieren, da n schon zur Compilezeit bekannt ist.</p>
<p>BTW: in C++ gibts new und delete, wobei man letzteres nicht direkt aufrufen sollte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323798</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323798</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Thu, 16 May 2013 17:06:02 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:16:43 GMT]]></title><description><![CDATA[<p>Es spricht folgendes gegen std::vector:<br />
Wenn ich std::vector in einer Klasse oder Struktur deklariere,gibt der Compiler als Fehlermeldung,dass vor der Konstante,also die Konstante die,die Größe beschreibt,kein Typ angegeben ist,da er std::vector nichts als so einen ansieht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323801</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323801</guid><dc:creator><![CDATA[coder++]]></dc:creator><pubDate>Thu, 16 May 2013 17:16:43 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 12 Jun 2014 01:08:12 GMT]]></title><description><![CDATA[<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323803</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 12 Jun 2014 01:08:12 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:31:28 GMT]]></title><description><![CDATA[<p>Folgendes Beipsiel würde nicht funktionieren ...</p>
<pre><code>class Test
{
    std::vector&lt;int&gt;Testvektor(10);
};
</code></pre>
<p>Anscheinend erkennt er std::vector nicht als gültigen Typ an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323805</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323805</guid><dc:creator><![CDATA[coder++]]></dc:creator><pubDate>Thu, 16 May 2013 17:31:28 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:37:45 GMT]]></title><description><![CDATA[<p>coder++ schrieb:</p>
<blockquote>
<p>Anscheinend erkennt er std::vector nicht als gültigen Typ an.</p>
</blockquote>
<p>Das geht so:</p>
<pre><code>#include &lt;vector&gt;

class Test
{
    std::vector&lt;int&gt; Testvektor;
public:
    Test() : Testvektor(10) {}
};
</code></pre>
<p>Die Frage ist aber, ob eine Größenangabe überhaupt sinnvoll ist!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323806</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Thu, 16 May 2013 17:37:45 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:38:42 GMT]]></title><description><![CDATA[<p>coder++ schrieb:</p>
<blockquote>
<p>Folgendes Beipsiel würde nicht funktionieren ...</p>
<pre><code>class Test
{
    std::vector&lt;int&gt;Testvektor(10);
};
</code></pre>
<p>Anscheinend erkennt er std::vector nicht als gültigen Typ an.</p>
</blockquote>
<p>*facepalm* *facepalm* *facepalm*<br />
Lern, verdammt nochmal C++!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323807</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Thu, 16 May 2013 17:38:42 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:41:22 GMT]]></title><description><![CDATA[<p>Lern ich doch.<br />
Grade 3. Buch da es z.B. Klassen-Templates,Mesthoden-Templates,usw. erklärt,über die sonst noch nie gesprochen wurde und mich immer im Glauben ließen,es gäbe nur Funktions-Templates.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323809</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323809</guid><dc:creator><![CDATA[coder++]]></dc:creator><pubDate>Thu, 16 May 2013 17:41:22 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 17:59:31 GMT]]></title><description><![CDATA[<p>Wenn du bis jetzt noch nicht Init.-Listen gesehen hast, solltest du die Bücher wechseln.<br />
Welche waren das denn?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323812</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Thu, 16 May 2013 17:59:31 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 18:12:41 GMT]]></title><description><![CDATA[<p>Also:<br />
-Das aktuelle,das ich lese:&quot;Moderne C++ Programmierung&quot; von Ralf Schneeweiß<br />
-&quot;Einführung in die Programmierung - C/C++&quot; von Gundolf Haase<br />
-&quot;C++ Programmierung&quot; von Benjamin Buch<br />
-Das erste:&quot;C++ Begleitheft zum Kurs für Mathematisch-technische Assistentinnen und Assistenten&quot; von Wilhelm Hanrath</p>
<p>Wobei ich das erste ganz und die anderen oft nur teilweise gelesen habe.<br />
Nun lese ich das neueste,also &quot;Moderne C++ Programmierung&quot; aber ganz.</p>
<p>Also nur das erste ist das aktuelle und nicht auch noch die 2 darunter.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323818</guid><dc:creator><![CDATA[coder++]]></dc:creator><pubDate>Thu, 16 May 2013 18:12:41 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 12 Jun 2014 01:08:15 GMT]]></title><description><![CDATA[<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323827</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 12 Jun 2014 01:08:15 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 19:07:23 GMT]]></title><description><![CDATA[<p>Swordfish schrieb:</p>
<blockquote>
<p>Also ich weiß ned so recht. Ist von 2006, fast schon prähistorisch. Im Hello World (!!) ein völlig sinnloses <code>std::endl</code> und den ersten wirklich groben Schnitzer auf S. 23 bei den Wertebereichen von Grunddatentypen. Magst ned evtl. lieber den Primer lesen?</p>
</blockquote>
<p>Dieses endl ist eine Tüpfchenscheisserei von diesem Forum, von dem kann man nur darauf schliessen, dass der Autor hier nie aktiv war.</p>
<p>Allerdings ist das Buch schon etwas veraltet (die Codelistings sind ja frei verfügbar); z.B. hat er ein <code>throw(dies, jenese)</code> darin stehen. Im Grossen und ganzen sieht es aber ganz in Ordnung aus, die Feinheiten kann er dann hier lernen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323828</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323828</guid><dc:creator><![CDATA[nedevtl]]></dc:creator><pubDate>Thu, 16 May 2013 19:07:23 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 12 Jun 2014 01:08:21 GMT]]></title><description><![CDATA[<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323832</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 12 Jun 2014 01:08:21 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 19:54:50 GMT]]></title><description><![CDATA[<p>nedevtl schrieb:</p>
<blockquote>
<p>Dieses endl ist eine Tüpfchenscheisserei von diesem Forum, von dem kann man nur darauf schliessen, dass der Autor hier nie aktiv war.</p>
</blockquote>
<p>Und Meyers nicht liest.<br />
<a href="http://www.aristeia.com/Papers/C++ReportColumns/novdec95.pdf" rel="nofollow">http://www.aristeia.com/Papers/C++ReportColumns/novdec95.pdf</a><br />
Anno 1995. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
<p>Und das wirft sehr wohl einen Schatten auf den Autor. Um ein Buch zu schreiben, sollte man sich in der Gegend recht umfassend auskennen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323855</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Thu, 16 May 2013 19:54:50 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 21:15:38 GMT]]></title><description><![CDATA[<p>coder++ schrieb:</p>
<blockquote>
<p>Das aktuelle, das ich lese: &quot;Moderne C++ Programmierung&quot; von Ralf Schneeweiß.</p>
</blockquote>
<p>Habe mir eben die Leseprobe angeschaut. Bei &quot;Hello World&quot; + std::endl hätte ich noch ein Auge zugedrückt. Dann habe ich mir Seite 22, 23 und 24 angeschaut... Ich stimme Swordfish zu, ein weiters Buch für die Kategorie <strong>Nicht empfehlenswert</strong>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323875</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Thu, 16 May 2013 21:15:38 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 16 May 2013 21:57:37 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>coder++ schrieb:</p>
<blockquote>
<p>Das aktuelle, das ich lese: &quot;Moderne C++ Programmierung&quot; von Ralf Schneeweiß.</p>
</blockquote>
<p>Habe mir eben die Leseprobe angeschaut. Bei &quot;Hello World&quot; + std::endl hätte ich noch ein Auge zugedrückt. Dann habe ich mir Seite 22, 23 und 24 angeschaut... Ich stimme Swordfish zu, ein weiters Buch für die Kategorie <strong>Nicht empfehlenswert</strong>.</p>
</blockquote>
<p>War mir schon nach dem Titel klar.<br />
Trittbrettfahrer vom unglaublich guten Titel &quot;Modern C++-Design&quot;.<br />
Trittbrettfahrertitel sind immer jämmerlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323876</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Thu, 16 May 2013 21:57:37 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Thu, 12 Jun 2014 10:13:35 GMT]]></title><description><![CDATA[<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323882</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323882</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 12 Jun 2014 10:13:35 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Fri, 17 May 2013 07:22:04 GMT]]></title><description><![CDATA[<p>&quot;malloc()&quot; und &quot;free()&quot; haben in zeitgemäßem C++-Code nichts, wirklich rein gar nichts zu suchen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323914</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Fri, 17 May 2013 07:22:04 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Fri, 17 May 2013 11:17:11 GMT]]></title><description><![CDATA[<p>Swordfish schrieb:</p>
<blockquote>
<p>nedevtl schrieb:</p>
<blockquote>
<p>[...] Dieses endl ist eine Tüpfchenscheisserei von diesem Forum, [...]</p>
</blockquote>
<p>Ein <code>std::endl</code> in einem Hello World in einem Lehrbuch (!) ist einfach eine in didaktischer Hinsicht zum Himmel stinkende Kacke. Da brauchts ned mal technische Argumente ... Auf Seite 23 geht's wie gesagt weiter ... da mag ich den Rest garnicht unbedingt kennen.</p>
</blockquote>
<p>Nö, das mit std::endl macht Sinn. Escape-Sequenzen kann man später noch erklären, bis dahin ist std::endl schön zu lesen.<br />
Schaden tut's in den allerseltensten Fällen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2323978</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323978</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Fri, 17 May 2013 11:17:11 GMT</pubDate></item><item><title><![CDATA[Reply to Vektor-Klasse und dynamisch allokierter Speicher on Fri, 17 May 2013 11:34:56 GMT]]></title><description><![CDATA[<p>Ethon schrieb:</p>
<blockquote>
<p>Swordfish schrieb:</p>
<blockquote>
<p>nedevtl schrieb:</p>
<blockquote>
<p>[...] Dieses endl ist eine Tüpfchenscheisserei von diesem Forum, [...]</p>
</blockquote>
<p>Ein <code>std::endl</code> in einem Hello World in einem Lehrbuch (!) ist einfach eine in didaktischer Hinsicht zum Himmel stinkende Kacke. Da brauchts ned mal technische Argumente ... Auf Seite 23 geht's wie gesagt weiter ... da mag ich den Rest garnicht unbedingt kennen.</p>
</blockquote>
<p>Nö, das mit std::endl macht Sinn. Escape-Sequenzen kann man später noch erklären, bis dahin ist std::endl schön zu lesen.<br />
Schaden tut's in den allerseltensten Fällen.</p>
</blockquote>
<p>Der Schüler weiß anfangs ebensowenig wie endl funktioniert, (das war doch eine void-Funktion, für die der op&lt;&lt; eine Überladung hat, und die '\n' ausgibt und dann flusht,) noch wie '\n' funktioniert. Und man muß es ebensowenig erklären. Einfach nur '\n' bewirkt in der Ausgabe einen Zeilenumbruch.</p>
<p>Er kann doch '\n' tippen, oder? Und er ist (noch) kein Programmierdepp. Was sich aber ändern wird, wenn man ihn nur so behandelt. <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/2323988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2323988</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 17 May 2013 11:34:56 GMT</pubDate></item></channel></rss>