<?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[Performance -Problem beim wstring]]></title><description><![CDATA[<p>Hallo ,</p>
<p>ich baue einen XML -String als wstring zusammen und habe festgestellt , dass<br />
die Anwendung sehr langsam ist.</p>
<p>Hat jemand eine Idee wie ich die Geschwindigkeit erhöhen kann ?</p>
<p>Danke im voraus.</p>
<p>Viele Grüße,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/149439/performance-problem-beim-wstring</link><generator>RSS for Node</generator><lastBuildDate>Sat, 05 Sep 2026 08:35:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/149439.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 06 Jun 2006 08:20:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:20:25 GMT]]></title><description><![CDATA[<p>Hallo ,</p>
<p>ich baue einen XML -String als wstring zusammen und habe festgestellt , dass<br />
die Anwendung sehr langsam ist.</p>
<p>Hat jemand eine Idee wie ich die Geschwindigkeit erhöhen kann ?</p>
<p>Danke im voraus.</p>
<p>Viele Grüße,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072189</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:20:25 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:31:04 GMT]]></title><description><![CDATA[<p>Ist der Beitrag ernst gemeint? Du gibst ja gar keine Informationen raus! Wie soll man da helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072206</guid><dc:creator><![CDATA[LOL!]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:31:04 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:39:55 GMT]]></title><description><![CDATA[<p>Ich baue den XML-String ganz normal zusammen.</p>
<pre><code class="language-cpp">std::wstring sBlob; // für die Klasse global
sBlob.reserve( p_lGroesse );

void addString ( std::wstring  sText )
{
   sBlob= sBlob + sText;
}
</code></pre>
<p>Und das ist viel zu langsam.</p>
<p>Mfg , Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072217</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:39:55 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:42:56 GMT]]></title><description><![CDATA[<p>Wenn der String sehr lang ist, dann könntest du mit</p>
<pre><code class="language-cpp">wstring wstr;
wstr.reserve(10000); // oder noch mehr
</code></pre>
<p>dir vorher genug Speicher reservieren (damit nicht immer wieder intern umkopiert werden muß).</p>
<p>Ansonsten zeig mal ein bißchen Code...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072224</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:42:56 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:46:07 GMT]]></title><description><![CDATA[<p>Außerdem solltest du statt &quot;sBlob = sBlob + sText;&quot; lieber &quot;sBlob += sText;&quot; verwenden - dein Code erzeugt nämlich unnötig viele Kopien der Strings, die angelegt, gefüllt und wieder freigegeben werden müssen.</p>
<p>(PS: Und übergib sText lieber als &quot;const wstring&amp;&quot;)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072226</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:46:07 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:47:44 GMT]]></title><description><![CDATA[<p>Außerdem könntest du den Parameter als const reference übergeben, dann wird er nicht kopiert.</p>
<pre><code class="language-cpp">void addString ( const std::wstring&amp;  sText );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1072229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072229</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:47:44 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:47:50 GMT]]></title><description><![CDATA[<p>Hallo,<br />
erstmal solltest du sText als Referenz übergeben. Damit sparst du dir schonmal eine Kopie. Eine weitere Kopie kannst du dir sparen, wenn du den += Operator benutzt. Also sBlob += sText;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072230</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072230</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:47:50 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:48:56 GMT]]></title><description><![CDATA[<p>Ich dachte , dass ich viellecht den wstring als wchar zusammenbauen<br />
soll. Weiß aber nicht ob es damit schneller geht <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>Mfg ,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072233</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:48:56 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:55:01 GMT]]></title><description><![CDATA[<p>Kann mir ehrlich gesagt nicht vorstellen, dass es lange dauert einen Text anzufügen.<br />
Wie kommst Du darauf, das es daran liegt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072240</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072240</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:55:20 GMT]]></title><description><![CDATA[<p>ich habe den String schon als Referenz übergeben , nur im Beispiel nicht angegegeben.</p>
<p>Das mit sBlob +=sText muss ich noch testen.</p>
<p>Danke !</p>
<p>Mfg , Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072241</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072241</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:55:20 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 08:59:53 GMT]]></title><description><![CDATA[<p>Hallo templäd ,</p>
<p>ich habe unsere lauffähige Anwendung vor Kurzem auf den wstring umgestellt.</p>
<p>Und wenn ich die Zeiten vergleiche , dann ist das Programm richtig langsam geworden. Es kann nur am wstring liegen. In der &quot;nicht umgestellten&quot; Anwendung haben wir den String allerdings als char zusammengebaut.</p>
<p>Mfg , Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072251</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 08:59:53 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 10:48:27 GMT]]></title><description><![CDATA[<p>Naja, du solltest auch bedenken, dass bei einem wstring mehr Daten gelesen und geschrieben werden müssen, da wchar_t idR mehr Speicher verbraucht als char. Unter Windows ist char zB 8 Bit und wchar_t 16 Bit. Solange deine Anwendung bei so einer Konstellation also nicht mehr als doppelt so langsam (was der Worst-Case wäre) läuft wie vorher, würde ich mir noch keine Sorgen machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072354</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072354</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Tue, 06 Jun 2006 10:48:27 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Tue, 06 Jun 2006 12:38:28 GMT]]></title><description><![CDATA[<p>Hallo groovemaster,</p>
<p>das ist ja das Problem . Die Anwendung ist ums Zehnfache langsamer <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>Mfg, Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072463</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Tue, 06 Jun 2006 12:38:28 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Wed, 07 Jun 2006 08:30:29 GMT]]></title><description><![CDATA[<p>Hmmm ... dann würde ich empfehlen, einen Profiler zu benutzen, falls das möglich ist. Evtl. lässt sich damit herausfinden, wo zuviel Zeit gebraucht wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072975</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072975</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Wed, 07 Jun 2006 08:30:29 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Wed, 07 Jun 2006 13:07:14 GMT]]></title><description><![CDATA[<p>Hallo CStoll,</p>
<p>vielen Dank für deinen Tipp:<br />
Das mit</p>
<pre><code class="language-cpp">sBlob += sText
</code></pre>
<p>statt</p>
<pre><code class="language-cpp">sBlob = sBlob + sText
</code></pre>
<p>Es hat wahre Wunder bewirkt ! Die Laufzeit hat sich von einer Stunde auf 3 Min.<br />
verkürzt !</p>
<p>Wird bei der zweiten Schreibweise immer eine neue Instanz erzeugt und der Inhalt reinkopiert ?</p>
<p>Danke !</p>
<p>Viele Grüße,<br />
Elke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073161</guid><dc:creator><![CDATA[Elke100]]></dc:creator><pubDate>Wed, 07 Jun 2006 13:07:14 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Wed, 07 Jun 2006 13:31:10 GMT]]></title><description><![CDATA[<p>Nunja, zweitere Variante muss auf jeden Fall<br />
a) Neuen, temporären String erzeugen, Speicher allokieren<br />
b) In diesen neuen String die beiden Teilstrings kopieren<br />
c) temporären String in Ergebnis kopieren</p>
<p>Erstere ist in der Lage den Faktor der Reserve auszunutzen<br />
a) Schauen ob Kapazität kleiner als neue Länge<br />
a2) <strong>Nur wenn ja</strong>, neuen Speicher allokieren<br />
b) Teilstring an bisherigen String anhängen</p>
<p>Es wird also in c) die Kopie gespart und in a) evtl. vorhandener Reservespeicher ausgenutzt.</p>
<p>EDIT:<br />
Dreher korrigiert <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="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073185</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 07 Jun 2006 13:31:10 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Wed, 07 Jun 2006 13:55:17 GMT]]></title><description><![CDATA[<p>Was ist mit der append()-Methode?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073200</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 07 Jun 2006 13:55:17 GMT</pubDate></item><item><title><![CDATA[Reply to Performance -Problem beim wstring on Wed, 07 Jun 2006 14:03:41 GMT]]></title><description><![CDATA[<p>Artchi schrieb:</p>
<blockquote>
<p>Was ist mit der append()-Methode?</p>
</blockquote>
<p>äquivalent zu +=</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073206</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 07 Jun 2006 14:03:41 GMT</pubDate></item></channel></rss>