<?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 push_back frage]]></title><description><![CDATA[<p>Guten Abend.</p>
<p>Vielleicht ist das eine ziemlich &quot;dumme&quot; Frage , doch ich möchte das einfach wissen :</p>
<p>Ich habe einen vector als container kreiert</p>
<pre><code class="language-cpp">vector&lt;string&gt; std_armor(5); // 0 helm , 1 brust , 2 hand , 3 beine , 4 füße

	std_armor[0] = &quot;Lederhelm&quot;;
	std_armor[1] = &quot;Lederharnisch&quot;;
	std_armor[2] = &quot;Keine Handschuhe&quot;;
	std_armor[3] = &quot;Leinenhose&quot;;
	std_armor[4] = &quot;Lederschuhe&quot;;
</code></pre>
<p>jetzt gibt es eine eingabe , wenn die 'i' ist dann kommt man in eine for schleife.<br />
Ich hab die mal entfernt , damit man das besser sieht :</p>
<pre><code class="language-cpp">if(i == '0'){std_armor[0].erase();char xx; cin &gt;&gt; xx; std_armor[0].push_back(xx);}
</code></pre>
<p>Das geht so weit , auch wenn es jetzt hier nur einen charakter in das feld schreibt.<br />
Ich wollte jetzt aber eig. strings verwenden , doch die funktion push_back nimmt nur char!</p>
<p>Gibts da ne alternative zu der funktion ?<br />
und sollte ich statt push_back nicht eher insert nehmen ?<br />
insert sieht mir in dem fall logischer aus , weil push_back ja ein neuse element erzeugt , auchwenn es hier mit eine explizitem feld arbeitet</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/291709/vector-push_back-frage</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 13:03:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/291709.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Aug 2011 20:24:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:26:35 GMT]]></title><description><![CDATA[<p>Guten Abend.</p>
<p>Vielleicht ist das eine ziemlich &quot;dumme&quot; Frage , doch ich möchte das einfach wissen :</p>
<p>Ich habe einen vector als container kreiert</p>
<pre><code class="language-cpp">vector&lt;string&gt; std_armor(5); // 0 helm , 1 brust , 2 hand , 3 beine , 4 füße

	std_armor[0] = &quot;Lederhelm&quot;;
	std_armor[1] = &quot;Lederharnisch&quot;;
	std_armor[2] = &quot;Keine Handschuhe&quot;;
	std_armor[3] = &quot;Leinenhose&quot;;
	std_armor[4] = &quot;Lederschuhe&quot;;
</code></pre>
<p>jetzt gibt es eine eingabe , wenn die 'i' ist dann kommt man in eine for schleife.<br />
Ich hab die mal entfernt , damit man das besser sieht :</p>
<pre><code class="language-cpp">if(i == '0'){std_armor[0].erase();char xx; cin &gt;&gt; xx; std_armor[0].push_back(xx);}
</code></pre>
<p>Das geht so weit , auch wenn es jetzt hier nur einen charakter in das feld schreibt.<br />
Ich wollte jetzt aber eig. strings verwenden , doch die funktion push_back nimmt nur char!</p>
<p>Gibts da ne alternative zu der funktion ?<br />
und sollte ich statt push_back nicht eher insert nehmen ?<br />
insert sieht mir in dem fall logischer aus , weil push_back ja ein neuse element erzeugt , auchwenn es hier mit eine explizitem feld arbeitet</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110352</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110352</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:26:35 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:31:28 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">char xx; cin &gt;&gt; xx;
</code></pre>
<p>zu</p>
<pre><code class="language-cpp">string xx; cin &gt;&gt; xx;
</code></pre>
<p>machen. Sonst liest du ja auch immer nur das erste Zeichen ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110354</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110354</guid><dc:creator><![CDATA[1234567890]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:31:28 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:34:14 GMT]]></title><description><![CDATA[<p>1234567890 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">char xx; cin &gt;&gt; xx;
</code></pre>
<p>zu</p>
<pre><code class="language-cpp">string xx; cin &gt;&gt; xx;
</code></pre>
<p>machen. Sonst liest du ja auch immer nur das erste Zeichen ein.</p>
</blockquote>
<p>Haha jaja das ist ja eben das problem !<br />
wie ich geschrieben hatte nimmt die funktion push_back(); nur char !<br />
Sonst wäre das ja alles kein problem</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110355</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110355</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:34:14 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:41:26 GMT]]></title><description><![CDATA[<p>std_armor[0] ist ein string. Wenn du denn string ändern willst, schreibe std_armor[0] = xx;<br />
Ansonsten hat std::string eben nur eine push_back Funktion für einen char.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110357</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110357</guid><dc:creator><![CDATA[1234567890]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:41:26 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:41:28 GMT]]></title><description><![CDATA[<p>Für die Verkettung von Strings miteinander gibt es append() oder auch +=. Wenn du den alten Wert sowieso vorher löschst, kannst du auch eine ganz normale Zuweisung verwenden.</p>
<p>PS: Hat es eigentlich einen Grund, keinen int für den Auswahl zu verwenden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110358</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110358</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:41:28 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:41:50 GMT]]></title><description><![CDATA[<p>Was willst du denn jetzt machen? Einen neuen String in den Vector einfügen, oder etwas an einen String im Vector abhängen? Dein Code macht jedenfalls letzteres.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110359</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110359</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:41:50 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:50:03 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">cin &gt;&gt; std_armor[0];
</code></pre>
<p>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110361</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110361</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:50:03 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:51:56 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/33012">@1234567890</a> danke.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10318">@CStoll</a> Danke ich schau mit mal den operator und die funktion an</p>
<blockquote>
<p>Hat es eigentlich einen Grund, keinen int für den Auswahl zu verwenden?</p>
</blockquote>
<p>Wenn du das xx meinst : man soll die string felder umbenennen.</p>
<p>@manni66</p>
<blockquote>
<p>Einen neuen String in den Vector einfügen, oder etwas an einen String im Vector abhängen? Dein Code macht jedenfalls letzteres.</p>
</blockquote>
<p>Wieso sollte ich einen neune string einfügen , wenn ich eine schon erstellten string löche und wieder was reinschreibe....Also es sollte den sinn haben einen von den 5 zu editieren , sprich löchen und neu reinschreiben</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110363</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110363</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:51:56 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:54:01 GMT]]></title><description><![CDATA[<blockquote>
<p>cin &gt;&gt; std_armor[0];</p>
</blockquote>
<p>jo danke ist ja das gleiche wie std_armor[0]= xx; , erspart mir einen schritt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110365</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:54:01 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 20:54:52 GMT]]></title><description><![CDATA[<p>Danke euch allen <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/2110366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110366</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 20:54:52 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 21:06:32 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<p>Wenn du das xx meinst : man soll die string felder umbenennen.</p>
</blockquote>
<p>Er meint den Index. Aus dem kann man doch bestimmt auch einen int machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110367</guid><dc:creator><![CDATA[1234567890]]></dc:creator><pubDate>Wed, 24 Aug 2011 21:06:32 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 21:12:16 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10318">@CStoll</a> Danke ich schau mit mal den operator und die funktion an</p>
<blockquote>
<p>Hat es eigentlich einen Grund, keinen int für den Auswahl zu verwenden?</p>
</blockquote>
<p>Wenn du das xx meinst : man soll die string felder umbenennen.</p>
</blockquote>
<p>Nein, ich meinte das <code>if( i=='0' )</code> - wenn du nicht irgendwelche Gründe hast, die aus den Fragmenten nicht erkennbar sind, nimm einen &quot;int i&quot; (oder &quot;unsigned i&quot; und verwende ihn direkt als Index für die vector-Zugriffe (d.h. anstelle von &quot;if(i=='0') machwas mit std_armor[0]; else if(i=='1') machwas mit std_armor[1]...&quot; kannst du einfach schreiben &quot;machwas mit std_armor[i];&quot;).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110368</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 24 Aug 2011 21:12:16 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 21:13:53 GMT]]></title><description><![CDATA[<p>Wieso das ? int kann doch nur numerische Werte enthalten , oder ich meine gerade was anderes.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110369</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 21:13:53 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 21:28:07 GMT]]></title><description><![CDATA[<p>Der Index zum Zugriff auf einen vector kann auch nur numerische Werte enthalten, also sollte das nicht das Problem sein, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110371</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 24 Aug 2011 21:28:07 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 21:38:24 GMT]]></title><description><![CDATA[<p>Oh ne missverständniss.Ich hab deinen vorigen post nicht gelesen.</p>
<p>Ich hab das nur hier mit dem if gemacht , damit man das besser sieht.<br />
Ich hab das wie du schon gesagt mit std_armor[i]; in einer for schleife geregelt.<br />
Das wäre ja undenkbar für jedes einzelne element ein ifeinzubauen , außerdem denke ich ist das bei sehr vielen elementen performance lastig</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110375</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110375</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 21:38:24 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 22:17:50 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<p>Ich hab das nur hier mit dem if gemacht , damit man das besser sieht.<br />
Ich hab das wie du schon gesagt mit std_armor[i]; in einer for schleife geregelt.</p>
</blockquote>
<p>Mit solchen Konstruktionen verwirrst du uns nur unnötig und lenkst damit von deinem eigentlichen Problem ab.</p>
<blockquote>
<p>Das wäre ja undenkbar für jedes einzelne element ein ifeinzubauen , außerdem denke ich ist das bei sehr vielen elementen performance lastig</p>
</blockquote>
<p>Die Performance dürfte da noch dein kleinstes Problem sein. So eine Konstruktion ist vor allem fehleranfällig und schlecht erweiterbar.</p>
<p>(was das &quot;undenkbar&quot; angeht: ich hab' schon vergleichbare Konstruktionen im produktiven Code gesehen - ein Extrembeispiel war eine Schleife ala &quot;for(i=0;i&lt;40;++i){ switch(i){...} } (40 Fälle ala 15 Zeilen, die sich nur in einem Variablennamen unterschieden haben))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2110382</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110382</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 24 Aug 2011 22:17:50 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Wed, 24 Aug 2011 22:49:46 GMT]]></title><description><![CDATA[<blockquote>
<p>(was das &quot;undenkbar&quot; angeht: ich hab' schon vergleichbare Konstruktionen im produktiven Code gesehen - ein Extrembeispiel war eine Schleife ala &quot;for(i=0;i&lt;40;++i){ switch(i){...} } (40 Fälle ala 15 Zeilen, die sich nur in einem Variablennamen unterschieden haben))</p>
</blockquote>
<p>Oh mein gott ! Wenn man so was als halbwegs guter programmierer sieht bricht man doch weinend zusammen <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2110387</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2110387</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Wed, 24 Aug 2011 22:49:46 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Sat, 27 Aug 2011 07:13:44 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<p>Oh mein gott ! Wenn man so was als halbwegs guter programmierer sieht bricht man doch weinend zusammen <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>
</blockquote>
<p>Da gebe ich dir völlig recht, aber vermutlich hat sich das noch nicht überall durchgesetzt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Denjenigen, der diesen Müll verzapft hat, habe ich leider nicht mehr kennengelernt, aber für diese Konstruktionen hätte ich ihm gerne noch nachträglich den Kopf geradegerückt. So blieb mir nur, das Modul wegzuwerfen und von vorne anzufangen (war einfacher als es so umzubauen daß es den neuen Anforderungen entspricht).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2111273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2111273</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 27 Aug 2011 07:13:44 GMT</pubDate></item><item><title><![CDATA[Reply to vector push_back frage on Sat, 27 Aug 2011 09:43:28 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>(was das &quot;undenkbar&quot; angeht: ich hab' schon vergleichbare Konstruktionen im produktiven Code gesehen - ein Extrembeispiel war eine Schleife ala &quot;for(i=0;i&lt;40;++i){ switch(i){...} } (40 Fälle ala 15 Zeilen, die sich nur in einem Variablennamen unterschieden haben))</p>
</blockquote>
<p>Haha, solche geniale Programmier trifft man öfters.</p>
<p>Und ausser WTF? fällt mir dazu inzwischen nix mehr ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2111293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2111293</guid><dc:creator><![CDATA[EOP]]></dc:creator><pubDate>Sat, 27 Aug 2011 09:43:28 GMT</pubDate></item></channel></rss>