<?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[unordered_map]]></title><description><![CDATA[<p>Hallo und guten Morgen</p>
<p>Eine Frage.</p>
<p>Gibt es eine Möglichkeit um das Clearen der unord. Map zu beschleunigen?</p>
<p>Ich hab mir vorgenommen, meine Parameterliste von Grund auf selber aufzustellen. Nun das können zwischen 5000 bis mehreren 100'000 einzelne Faktoren sein.</p>
<p>Mit der unordered_map hab ich in Sachen Schnelligkeit und K,V-Zugriff ein gutes Werkzeug gefunden. Nur leider wenn ich die clear()-Methode einleite, geht das ewig lange, bis ich wieder ein neuer Aufbau einleiten kann.</p>
<p>Hab ich da was übersehen? Oder weiss jemand eventuell ein besseres Werkzeug? Die erforderlichen Eigenschaften:<br />
- Schnelligkeit beim Aufbau<br />
- Schnelligkeit beim Abbau<br />
- K,V-Zugriff</p>
<p>Danke für die Hilfe.</p>
<p>wachs</p>
<p>Hier noch ein wenig Beispiel-Code.</p>
<pre><code>#define MAX_MAP_ITEM 100000
typedef std::unordered_map&lt;int,double&gt; tFaktorMap;

int _tmain(int argc, _TCHAR* argv[]){
	unsigned long StartTime = GetTickCount();

	tFaktorMap fMap;

	for(int i=0;i&lt;MAX_MAP_ITEM;i++){
		fMap[i]=i/1000+i; //(Beispiel!! Die einzelnen Werte
                          // stehen in Bezug zueinenader.)
	}

	unsigned long EndTime = GetTickCount();
	unsigned long TimerValMS = EndTime - StartTime;
	std::cout&lt;&lt;std::endl&lt;&lt;&quot;Time: &quot;&lt;&lt; TimerValMS&lt;&lt;&quot;ms&quot;&lt;&lt;std::endl;

	StartTime = GetTickCount();
	fMap.clear();

	EndTime = GetTickCount();
	TimerValMS = EndTime - StartTime;
	std::cout&lt;&lt;std::endl&lt;&lt;&quot;Time: &quot;&lt;&lt; TimerValMS&lt;&lt;&quot;ms&quot;&lt;&lt;std::endl;

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/331527/unordered_map</link><generator>RSS for Node</generator><lastBuildDate>Fri, 01 May 2026 15:38:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/331527.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 05 Mar 2015 09:28:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to unordered_map on Thu, 05 Mar 2015 10:42:01 GMT]]></title><description><![CDATA[<p>Hallo und guten Morgen</p>
<p>Eine Frage.</p>
<p>Gibt es eine Möglichkeit um das Clearen der unord. Map zu beschleunigen?</p>
<p>Ich hab mir vorgenommen, meine Parameterliste von Grund auf selber aufzustellen. Nun das können zwischen 5000 bis mehreren 100'000 einzelne Faktoren sein.</p>
<p>Mit der unordered_map hab ich in Sachen Schnelligkeit und K,V-Zugriff ein gutes Werkzeug gefunden. Nur leider wenn ich die clear()-Methode einleite, geht das ewig lange, bis ich wieder ein neuer Aufbau einleiten kann.</p>
<p>Hab ich da was übersehen? Oder weiss jemand eventuell ein besseres Werkzeug? Die erforderlichen Eigenschaften:<br />
- Schnelligkeit beim Aufbau<br />
- Schnelligkeit beim Abbau<br />
- K,V-Zugriff</p>
<p>Danke für die Hilfe.</p>
<p>wachs</p>
<p>Hier noch ein wenig Beispiel-Code.</p>
<pre><code>#define MAX_MAP_ITEM 100000
typedef std::unordered_map&lt;int,double&gt; tFaktorMap;

int _tmain(int argc, _TCHAR* argv[]){
	unsigned long StartTime = GetTickCount();

	tFaktorMap fMap;

	for(int i=0;i&lt;MAX_MAP_ITEM;i++){
		fMap[i]=i/1000+i; //(Beispiel!! Die einzelnen Werte
                          // stehen in Bezug zueinenader.)
	}

	unsigned long EndTime = GetTickCount();
	unsigned long TimerValMS = EndTime - StartTime;
	std::cout&lt;&lt;std::endl&lt;&lt;&quot;Time: &quot;&lt;&lt; TimerValMS&lt;&lt;&quot;ms&quot;&lt;&lt;std::endl;

	StartTime = GetTickCount();
	fMap.clear();

	EndTime = GetTickCount();
	TimerValMS = EndTime - StartTime;
	std::cout&lt;&lt;std::endl&lt;&lt;&quot;Time: &quot;&lt;&lt; TimerValMS&lt;&lt;&quot;ms&quot;&lt;&lt;std::endl;

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2445373</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2445373</guid><dc:creator><![CDATA[wachs]]></dc:creator><pubDate>Thu, 05 Mar 2015 10:42:01 GMT</pubDate></item><item><title><![CDATA[Reply to unordered_map on Thu, 05 Mar 2015 12:51:42 GMT]]></title><description><![CDATA[<p>Das liegt daran, wie du dein Programm startest. Wenn ich ein Release-Build mache und mit STRG+F5 (without debugging) starte, brauche ich 0 ms.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2445414</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2445414</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Thu, 05 Mar 2015 12:51:42 GMT</pubDate></item><item><title><![CDATA[Reply to unordered_map on Thu, 05 Mar 2015 17:43:17 GMT]]></title><description><![CDATA[<p>Danke für die Antwort.</p>
<p>Wenn ich Release konfigueriere ist er auf jeden Fall schneller.</p>
<p>Hat sich erledigt. Hab heute die unordered_map als Vorgabe bekommen.</p>
<p>wachs</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2445487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2445487</guid><dc:creator><![CDATA[wachs]]></dc:creator><pubDate>Thu, 05 Mar 2015 17:43:17 GMT</pubDate></item></channel></rss>