<?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 Problem]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein kleines Verständnisproblem.</p>
<p>Ich besitze eine Vector Klasse, in dieser möchte ich meine mesh Objekte verwalten. Mit Vectoren habe ich bis dato kaum bis gar nicht zu tun gehabt.</p>
<pre><code>typedef OpenMesh::PolyMesh_ArrayKernelT&lt;&gt;  MyMesh;

class VectorMesh
{
public:
	VectorMesh(MyMesh mesh);
	~VectorMesh(void);
};
</code></pre>
<p>Soweit so gut. An anderer Stelle legen ich dann einen Vector vom obigen Typ an und befülle ihn.</p>
<p>Nun möchte ich ihn gerne wieder auslesen und auf die MeshObjekte zugreifen, dazu benutzte ich zunächst eine for Schleife:</p>
<pre><code>for(vector&lt;VectorMesh*&gt;::const_iterator meshiter=f-&gt;begin();
		meshiter != f-&gt;end();++meshiter)
</code></pre>
<p>Wie gelange ich jetzt aber an die Objekte. Egal wie ich bisher den Iterator eingestzt habe, bekam ich nur Fehlermeldungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/217037/vector-problem</link><generator>RSS for Node</generator><lastBuildDate>Sat, 10 Oct 2026 11:02:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/217037.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 02 Jul 2008 10:43:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector Problem on Wed, 02 Jul 2008 10:43:16 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein kleines Verständnisproblem.</p>
<p>Ich besitze eine Vector Klasse, in dieser möchte ich meine mesh Objekte verwalten. Mit Vectoren habe ich bis dato kaum bis gar nicht zu tun gehabt.</p>
<pre><code>typedef OpenMesh::PolyMesh_ArrayKernelT&lt;&gt;  MyMesh;

class VectorMesh
{
public:
	VectorMesh(MyMesh mesh);
	~VectorMesh(void);
};
</code></pre>
<p>Soweit so gut. An anderer Stelle legen ich dann einen Vector vom obigen Typ an und befülle ihn.</p>
<p>Nun möchte ich ihn gerne wieder auslesen und auf die MeshObjekte zugreifen, dazu benutzte ich zunächst eine for Schleife:</p>
<pre><code>for(vector&lt;VectorMesh*&gt;::const_iterator meshiter=f-&gt;begin();
		meshiter != f-&gt;end();++meshiter)
</code></pre>
<p>Wie gelange ich jetzt aber an die Objekte. Egal wie ich bisher den Iterator eingestzt habe, bekam ich nur Fehlermeldungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1539578</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1539578</guid><dc:creator><![CDATA[rafilis1982]]></dc:creator><pubDate>Wed, 02 Jul 2008 10:43:16 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Wed, 02 Jul 2008 10:47:26 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">(*meshiter)-&gt;MESHMENBER
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1539582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1539582</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Wed, 02 Jul 2008 10:47:26 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Wed, 02 Jul 2008 11:29:35 GMT]]></title><description><![CDATA[<p>Besten Dank <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1539618</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1539618</guid><dc:creator><![CDATA[rafilis1982]]></dc:creator><pubDate>Wed, 02 Jul 2008 11:29:35 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Thu, 10 Jul 2008 07:06:30 GMT]]></title><description><![CDATA[<p>[WinXP, Visual C++ 6.0, Win32 Consolenanwendung]</p>
<p>Da ich auch eine Frage zur Vector-Class habe, stell ich die gleich hier um keinen neuen Thread aufmachen zu müssen <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>
<p>Wie verhält sich die Laufzeit von Vector zu New / delete.</p>
<p>Hab das mal gemessen und verglichen (ganz simpel mit Integer)</p>
<pre><code class="language-cpp">int N = 100000000;
	clock_t start, end;

	//++++++++++++++++++++++

	start = clock();
	vector &lt;int&gt; test1;
	test1.reserve(N);
	for (int i = 0; i &lt; N; i++)
		test1.push_back( i );
	end = clock();
	printf(&quot;Vector mit reserve: %i\n&quot;, end - start );

	//++++++++++++++++++++++

	start = clock();
	int *test2 = new int[N];
	for (int j = 0; j &lt; N; j++)
		test2[j] = j;
	end = clock();
	printf(&quot;New: %i\n&quot;, end - start );
	delete [] test2;

	//+++++++++++++++++++++

	start = clock();
	vector &lt;int&gt; test3;
	for (int k = 0; k &lt; N; k++)
		test3.push_back( k );
	end = clock();
	printf(&quot;Vector ohne reserve: %i\n&quot;, end - start );

	//++++++++++++++++++++++
</code></pre>
<p>Ergebnisse (Optimierung war &quot;/O2&quot;):</p>
<blockquote>
<p>Vector mit reserve: 984<br />
New: 250<br />
Vector ohne reserve: 1390</p>
</blockquote>
<p>Frage kriegt man Vectoren noch schneller hin?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1544715</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1544715</guid><dc:creator><![CDATA[It0101]]></dc:creator><pubDate>Thu, 10 Jul 2008 07:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Thu, 10 Jul 2008 07:09:34 GMT]]></title><description><![CDATA[<p>debug oder release mode ?</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1544716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1544716</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Thu, 10 Jul 2008 07:09:34 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Thu, 10 Jul 2008 07:19:39 GMT]]></title><description><![CDATA[<p>denke mal debug, weil ein vector ungefähr gleich schnell wie ein int array sein müsste</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1544724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1544724</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Thu, 10 Jul 2008 07:19:39 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Thu, 10 Jul 2008 08:56:06 GMT]]></title><description><![CDATA[<p>Wo stell ich das ein? (bin noch frisch bei VC6) <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>
<p>EDIT: habs hinbekommen, steht jetzt auf &quot;Release&quot;, aber hat sich nicht gebessert.</p>
<p>Projekt-Optionen sind:</p>
<blockquote>
<p>/nologo /ML /W3 /GX /O2 /D &quot;WIN32&quot; /D &quot;NDEBUG&quot; /D &quot;_CONSOLE&quot; /D &quot;_MBCS&quot; /Fp&quot;Release/foo.pch&quot; /Yu&quot;stdafx.h&quot; /Fo&quot;Release/&quot; /Fd&quot;Release/&quot; /FD /c</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1544785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1544785</guid><dc:creator><![CDATA[It0101]]></dc:creator><pubDate>Thu, 10 Jul 2008 08:56:06 GMT</pubDate></item><item><title><![CDATA[Reply to vector Problem on Thu, 10 Jul 2008 11:22:32 GMT]]></title><description><![CDATA[<p>It0101 schrieb:</p>
<blockquote>
<p>(bin noch frisch bei VC6) <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>
</blockquote>
<p>Nimm lieber eine aktuelle Version, VC++ 2008 Express kannst du kostenlos herunterladen.</p>
<p>Soweit ich weiss, sind <code>std::vector</code> und Co. schon weitgehend auf Performance optimiert. Viel kannst du da nicht mehr verschnellern. Das beste, das du wohl tun kannst, ist mit <code>reserve</code> genügend Speicher bereitstellen, und schauen, dass du Operationen wie <code>insert</code> und <code>erase</code> eher spärlich einsetzt. Und mit Iteratoren statt Indizes zu arbeiten trägt wahrscheinlich auch einen Teil zur Performance bei.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1544923</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1544923</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Jul 2008 11:22:32 GMT</pubDate></item></channel></rss>