<?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[Vector Frage]]></title><description><![CDATA[<p>Hallo müsste hier nicht eigentlich mein Programm abstürtzen?</p>
<p>Wenn ich schreibe: vector&lt;int&gt;vec(4); dann stürtzt es ab wenn ich auf ein zu großes Element zugreife das ist ja logisch.</p>
<p>Aber wieso stürtzt das nicht ab wenn ich push_back verwende wie in meinem Beispiel?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

int main(int argc, char* argv[])
{
vector&lt;int&gt;vec;

for(int i=0;i&lt;4;i++) // An das Ende von vec eine 0 schreiben (insgesamt 4 mal)
{
	vec.push_back(0);
}

vec[2] = 2;

cout&lt;&lt;vec[900];

system(&quot;PAUSE&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/298240/vector-frage</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 21:05:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/298240.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 16 Jan 2012 11:19:39 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 11:19:39 GMT]]></title><description><![CDATA[<p>Hallo müsste hier nicht eigentlich mein Programm abstürtzen?</p>
<p>Wenn ich schreibe: vector&lt;int&gt;vec(4); dann stürtzt es ab wenn ich auf ein zu großes Element zugreife das ist ja logisch.</p>
<p>Aber wieso stürtzt das nicht ab wenn ich push_back verwende wie in meinem Beispiel?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
using namespace std;

int main(int argc, char* argv[])
{
vector&lt;int&gt;vec;

for(int i=0;i&lt;4;i++) // An das Ende von vec eine 0 schreiben (insgesamt 4 mal)
{
	vec.push_back(0);
}

vec[2] = 2;

cout&lt;&lt;vec[900];

system(&quot;PAUSE&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2168653</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168653</guid><dc:creator><![CDATA[vecc]]></dc:creator><pubDate>Mon, 16 Jan 2012 11:19:39 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 11:23:42 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>lass dir doch nach jedem &quot;push_back&quot; mal die Größe des vectors ausgeben...</p>
<p>viele Grüße<br />
Felix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168655</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168655</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Mon, 16 Jan 2012 11:23:42 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 11:23:48 GMT]]></title><description><![CDATA[<p>Schau mal was in Zeile 16 steht <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/2168656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168656</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Mon, 16 Jan 2012 11:23:48 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 11:33:46 GMT]]></title><description><![CDATA[<p>vecc schrieb:</p>
<blockquote>
<p>Aber wieso stürtzt das nicht ab wenn ich push_back verwende wie in meinem Beispiel?</p>
</blockquote>
<p>Dein Code erzeugt undefiniertes Verhalten. Du kannst dich also nicht darauf verlassen, dass etwas definiertes passiert, auch kein Absturz.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168658</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168658</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 16 Jan 2012 11:33:46 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 13:37:35 GMT]]></title><description><![CDATA[<p>Nochmal mit meinen eigenen Worten beschrieben: Du machst etwas, dessen Verhalten der C++ Standard nicht definiert (UB = undefined behaviour). Folglich kann <em>irgendetwas</em> passieren. Im <em>besten</em> Fall schmiert Dir das Programm sofort ab. Es kann aber natürlich auch sein, dass Du Müll irgendwo in den Speicher schreibst und Dir das erst auffält, wenn etwas anderes aufhört zu funktionieren oder Blödsinn zu machen scheint. Wie auch immer, du kannst Dich auf kein bestimmtes Verhalten verlassen. Und das erlaubt den Compilerherstellern und Bibliotheksautoren, die eine oder andere Überprüfung zu ersparen.</p>
<p>Tipp: Ziehe die Nutzung der Standardcontainer vor selbstgestrickten Sachen vor. Die meisten Anbieter lassen Dich einen Debug-Modus der Standardbiliothek einschalten, mit dem Du kleine Problemfälle testen kannst. Der Code läuft dann zwar langsamer, aber Du bemerkst dann solche Verwendungsfehler schon relativ früh, da viele der Vorbedingungen der einzelnen StdLib-Funktionen getestet werden. Siehe Doku Deines Compilers.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168663</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Mon, 16 Jan 2012 13:37:35 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 15:35:53 GMT]]></title><description><![CDATA[<p>1. Die größe deines Vectors ist 4. Nicht 901 <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="😉"
    /><br />
2: Arbeite bei sowas mit der at() Methode und nicht mit dem überladenen Index-operator. Die (at()-Methode) wirft eine std::out_of_range Exception (wenn der Index nicht stimmt), da erkennst du schnell was kaputt ist.</p>
<p>bb<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168799</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168799</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 16 Jan 2012 15:35:53 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 16:22:14 GMT]]></title><description><![CDATA[<p>Hacker schrieb:</p>
<blockquote>
<p>2: Arbeite bei sowas mit der at() Methode und nicht mit dem überladenen Index-operator. Die (at()-Methode) wirft eine std::out_of_range Exception (wenn der Index nicht stimmt), da erkennst du schnell was kaputt ist.</p>
</blockquote>
<p>Mach das nicht. Und versuche erst recht nicht, fehlerhafte Indexzugriffe durch das Fangen der Exception zur Laufzeit zu reparieren. Die gehören ausgemerzt, und dazu ist das in <code>operator[]</code> eingebaute <code>assert</code> ideal. Schliesslich will ich nicht für richtige Indexzugriffe zahlen, das muss ich schon in genügend anderen Sprachen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168834</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Mon, 16 Jan 2012 16:22:14 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 16:30:23 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Hacker schrieb:</p>
<blockquote>
<p>2: Arbeite bei sowas mit der at() Methode und nicht mit dem überladenen Index-operator. Die (at()-Methode) wirft eine std::out_of_range Exception (wenn der Index nicht stimmt), da erkennst du schnell was kaputt ist.</p>
</blockquote>
<p>Mach das nicht. Und versuche erst recht nicht, fehlerhafte Indexzugriffe durch das Fangen der Exception zur Laufzeit zu reparieren. Die gehören ausgemerzt, und dazu ist das in <code>operator[]</code> eingebaute <code>assert</code> ideal. Schliesslich will ich nicht für richtige Indexzugriffe zahlen, das muss ich schon in genügend anderen Sprachen...</p>
</blockquote>
<p>Leidet die Performance? Wusst' ich garnicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168840</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168840</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 16 Jan 2012 16:30:23 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 18:20:20 GMT]]></title><description><![CDATA[<p>Hacker schrieb:</p>
<blockquote>
<p>Leidet die Performance? Wusst' ich garnicht.</p>
</blockquote>
<p>Du dachtest das Testen des Index wäre gratis?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168867</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Mon, 16 Jan 2012 18:20:20 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 18:21:36 GMT]]></title><description><![CDATA[<p>Ich bin der Meinung, die Exception wirft sich von selber.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168868</guid><dc:creator><![CDATA[apostroph]]></dc:creator><pubDate>Mon, 16 Jan 2012 18:21:36 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 23:36:39 GMT]]></title><description><![CDATA[<p>vecc schrieb:</p>
<blockquote>
<p>system(&quot;PAUSE&quot;);<br />
[/cpp]</p>
</blockquote>
<p>Wenn Du plattformunabhängig programmieren möchtest, solltest &quot;system(&quot;PAUSE&quot;);&quot; weglassen, da es nur unter Windows funktioniert.<br />
Ansonsten solltest Du auch noch die cstdlib mit einbinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168974</guid><dc:creator><![CDATA[redrew99]]></dc:creator><pubDate>Mon, 16 Jan 2012 23:36:39 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Mon, 16 Jan 2012 23:41:18 GMT]]></title><description><![CDATA[<p>Und <a href="http://www.c-plusplus.net/forum/111042" rel="nofollow">hier</a> ein huebscher Artikel von SideWinder wie man richtig verhindert, dass die Konsole automatisch schliesst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168978</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168978</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Mon, 16 Jan 2012 23:41:18 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Tue, 17 Jan 2012 21:53:05 GMT]]></title><description><![CDATA[<p>redrew99 schrieb:</p>
<blockquote>
<p>Wenn Du plattformunabhängig programmieren möchtest, solltest &quot;system(&quot;PAUSE&quot;);&quot; weglassen, da es nur unter Windows funktioniert.</p>
</blockquote>
<p>Wenn Du glaubst, daß das das einzige Problem mit <code>system( )</code> ist, soltest Du evtl. nochmal darüber nachdenken...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2169325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2169325</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Tue, 17 Jan 2012 21:53:05 GMT</pubDate></item><item><title><![CDATA[Reply to Vector Frage on Tue, 17 Jan 2012 21:56:00 GMT]]></title><description><![CDATA[<p>Swordfish schrieb:</p>
<blockquote>
<p>Wenn Du glaubst, daß das das einzige Problem mit <code>system( )</code> ist, soltest Du evtl. nochmal darüber nachdenken...</p>
</blockquote>
<p>Oder einfach diesen <a href="http://www.c-plusplus.net/forum/39453" rel="nofollow">Artikel</a> aus dem Forum hier lesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2169327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2169327</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Tue, 17 Jan 2012 21:56:00 GMT</pubDate></item></channel></rss>