<?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[Anlegen eines Arrays]]></title><description><![CDATA[<p>In meinem C++ Programm erstelle ich eine Klasse mit folgenden Variablen:</p>
<pre><code>int netName;
	int netDegree;			// Number of pins in the net
	struct pins
	{
		int pinname;
		double x_offset;
		double y_offset;
		char pindirection;  // I: Input Pin; 0: Output Pin; B: Bidirectional Pin
	};
	pins pin_vector[];
</code></pre>
<p>Ich weiß aber von vornherein nicht wieviel Elemente das Array &quot;pin_vector&quot; haben wird. Die Anzahl der Elemente steht erst fest, nachdem die Instanz angelegt wurde.<br />
Wie könnte man sowas realisieren?<br />
Wie muss der Konstruktor aussehen wenn beim anlegen einer Instanz dieser Klasse noch nicht feststeht wieviel Elemente dieses Array hat???</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/280620/anlegen-eines-arrays</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 02:04:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/280620.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 18 Jan 2011 15:29:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 15:29:09 GMT]]></title><description><![CDATA[<p>In meinem C++ Programm erstelle ich eine Klasse mit folgenden Variablen:</p>
<pre><code>int netName;
	int netDegree;			// Number of pins in the net
	struct pins
	{
		int pinname;
		double x_offset;
		double y_offset;
		char pindirection;  // I: Input Pin; 0: Output Pin; B: Bidirectional Pin
	};
	pins pin_vector[];
</code></pre>
<p>Ich weiß aber von vornherein nicht wieviel Elemente das Array &quot;pin_vector&quot; haben wird. Die Anzahl der Elemente steht erst fest, nachdem die Instanz angelegt wurde.<br />
Wie könnte man sowas realisieren?<br />
Wie muss der Konstruktor aussehen wenn beim anlegen einer Instanz dieser Klasse noch nicht feststeht wieviel Elemente dieses Array hat???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008333</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008333</guid><dc:creator><![CDATA[cuba1]]></dc:creator><pubDate>Tue, 18 Jan 2011 15:29:09 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 15:32:50 GMT]]></title><description><![CDATA[<p>Schaue dir std::vector&lt;T&gt; an: <a href="http://www.cplusplus.com/reference/stl/vector/" rel="nofollow">http://www.cplusplus.com/reference/stl/vector/</a></p>
<p>Generell lies dir alles auf dieser Seite mal durch.</p>
<p>Edit: Alternativ musst du mit new und delete arbeiten. Aber warum haben wir die STL?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008334</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008334</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Tue, 18 Jan 2011 15:32:50 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 15:51:00 GMT]]></title><description><![CDATA[<p>Habs überlesen das Anzahl erst nach der Instantiierung feststeht, damit fallen Templates/Konstruktor raus <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="😃"
    /> also definitiv std::vector, wenn das nicht geht .. wieviele Pins sinds denn maximal - ist zwar Verschwendung aber du könntest (zB) 100 per Array Allokieren und der User muss die Maximale Anzahl eingeben, wenn Zugriffe ausserhalb der maximalen Anzahl geschehen werden die untersagt... (igittigit ... nimm std::vector :P)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008342</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008342</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Tue, 18 Jan 2011 15:51:00 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 15:55:37 GMT]]></title><description><![CDATA[<p>Zwei Beispiele:</p>
<pre><code class="language-cpp">struct MyStrukt{...};

class MyClassSTL
{
public:
	vector&lt;MyStrukt&gt; vec_Strukt;

	MyClassSTL()
	{
		Mystrukt bla;
		bla.value...

		vec_Strukt.push_back(bla); //passt sich selbst der größe an du musst nichts machen
	}
}; //einfach mit STL

class MyClassCminusminus
{
public:
	Mystrukt *vec_Strukt;

	MyClassCminusminus()
	{
		Mystrukt bla;
		bla.value...

		vec_Strukt = new Mystrukt[größe deines Arrays]; //du musst selbst die größe angeben und eventuell auch selbst ändern
	}

	~MyClassCminusminus()
	{
		delete[] vec_Strukt;
	}
}; //kompliziert ohne STL
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2008344</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008344</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Tue, 18 Jan 2011 15:55:37 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 16:04:58 GMT]]></title><description><![CDATA[<p>Wobei die Klasse <code>MyClassCminusminus</code> noch nicht einmal vollständig implementiert ist. Der nicht vorhandene Kopierkonstruktor und Zuweisungsoperator sind eine gefährliche Fehlerquelle.</p>
<p>Und jedes Einfügen/Löschen ist unnötig kompliziert und ineffizient. Man muss besonders gut darauf achten, dass alles exceptionsicher ist. Man hat im Debug-Modus keine Index- und Iteratorprüfungen. Überhaupt fehlt einem sehr viele Funktionalität, die man von Hand nachbauen muss. Und die Flexibilität, die Datenstruktur auszuwechseln, hat man auch nicht mit <code>new[]</code> und <code>delete[]</code> .</p>
<p>Kurz: Nur Nachteile ohne STL.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008346</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008346</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 18 Jan 2011 16:04:58 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 16:05:07 GMT]]></title><description><![CDATA[<p>Ich hab die Dreierregel der Einfachheit halber unterschlagen, genauso wie eine funktionierende Implementation.</p>
<p>std::vector ist der Weg nach Rom! (Es gibt nur einen lol)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2008347</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008347</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Tue, 18 Jan 2011 16:05:07 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 16:07:20 GMT]]></title><description><![CDATA[<p>HighLigerBiMBam schrieb:</p>
<blockquote>
<p>Ich hab die Dreierregel der Einfachheit halber unterschlagen</p>
</blockquote>
<p>Ja, aber mit einer einzigen zusätzlichen Zeile im Destruktor kommt das &quot;kompliziert ohne STL&quot; nicht wirklich zur Geltung. <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/2008348</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008348</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 18 Jan 2011 16:07:20 GMT</pubDate></item><item><title><![CDATA[Reply to Anlegen eines Arrays on Tue, 18 Jan 2011 16:11:47 GMT]]></title><description><![CDATA[<p>HighLigerBiMBam schrieb:</p>
<blockquote>
<p>std::vector ist der Weg nach Rom! (Es gibt nur einen lol)</p>
</blockquote>
<p>Es gibt mehr <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p><a href="http://www.cplusplus.com/reference/stl/" rel="nofollow">http://www.cplusplus.com/reference/stl/</a></p>
<p>1. vector Vector (class template)<br />
2. list List (class template)<br />
3. map Map (class template)<br />
4. deque Double ended queue (class template)</p>
<p>(ich mag deque nicht :D, und map&lt;int,struct&gt; iss doof <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/2008350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2008350</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Tue, 18 Jan 2011 16:11:47 GMT</pubDate></item></channel></rss>