<?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[Die 10.000 Zeiger-Frage]]></title><description><![CDATA[<p>Ich habe eine Klasse MyString mit dem Attribut id mit dem Konstruktor:</p>
<pre><code class="language-cpp">MyString::MyString(string s) {
	MyString::id = s;
}
</code></pre>
<p>Nun will ich den Vector mit MyStrings füllen</p>
<pre><code class="language-cpp">string s = &quot;test&quot;;
vector&lt;MyString&gt; v;
v.push_back(new MyString(s));
</code></pre>
<p>Nur funktioniert das so nicht! <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="😞"
    /> Ich kann ja zur Laufzeit nicht immer eine Variable anlegen, die ich dann in den Vector packen kann.</p>
<p>Ich habs wohl mit den Zeigern immer noch nicht gecheckt.</p>
<p>Mit dem Adressoperator &amp; bekomme ich doch die Adresse eines Objektes. In Variablen mit * kann ich diese Adressen speichern. Wenn ich jetzt mit &quot;new&quot; etwas erzeuge, steht dann an der Stelle nicht die Adresse des erzeugten Objektes? Und dürfte nicht der Vector nachher nicht in jedem Feld sozusagen die Adresse der MyString-Objekte stehen?</p>
<p>Wie kann ich denn mein Problem in C++ lösen? Meine Lösung beruht natürlich wieder aufgrund von Java-Kenntnissen. Aber habe keine Ahnung wie ich das sonst machen soll. Mit &amp; und * habe ich schon alles versucht, aber nur Fehlermeldungen...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/184226/die-10-000-zeiger-frage</link><generator>RSS for Node</generator><lastBuildDate>Wed, 23 Sep 2026 16:29:08 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/184226.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Jun 2007 13:21:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Die 10.000 Zeiger-Frage on Wed, 13 Jun 2007 13:21:00 GMT]]></title><description><![CDATA[<p>Ich habe eine Klasse MyString mit dem Attribut id mit dem Konstruktor:</p>
<pre><code class="language-cpp">MyString::MyString(string s) {
	MyString::id = s;
}
</code></pre>
<p>Nun will ich den Vector mit MyStrings füllen</p>
<pre><code class="language-cpp">string s = &quot;test&quot;;
vector&lt;MyString&gt; v;
v.push_back(new MyString(s));
</code></pre>
<p>Nur funktioniert das so nicht! <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="😞"
    /> Ich kann ja zur Laufzeit nicht immer eine Variable anlegen, die ich dann in den Vector packen kann.</p>
<p>Ich habs wohl mit den Zeigern immer noch nicht gecheckt.</p>
<p>Mit dem Adressoperator &amp; bekomme ich doch die Adresse eines Objektes. In Variablen mit * kann ich diese Adressen speichern. Wenn ich jetzt mit &quot;new&quot; etwas erzeuge, steht dann an der Stelle nicht die Adresse des erzeugten Objektes? Und dürfte nicht der Vector nachher nicht in jedem Feld sozusagen die Adresse der MyString-Objekte stehen?</p>
<p>Wie kann ich denn mein Problem in C++ lösen? Meine Lösung beruht natürlich wieder aufgrund von Java-Kenntnissen. Aber habe keine Ahnung wie ich das sonst machen soll. Mit &amp; und * habe ich schon alles versucht, aber nur Fehlermeldungen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1304844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1304844</guid><dc:creator><![CDATA[plizer]]></dc:creator><pubDate>Wed, 13 Jun 2007 13:21:00 GMT</pubDate></item><item><title><![CDATA[Reply to Die 10.000 Zeiger-Frage on Wed, 13 Jun 2007 13:29:24 GMT]]></title><description><![CDATA[<p>Man merkt, du bist Javaist!!!</p>
<pre><code class="language-cpp">string s = &quot;test&quot;;
vector&lt;MyString&gt; v;
MyString str(s);
v.push_back(str);
</code></pre>
<p>Kein new nötig!</p>
<p>vector&lt;MyString&gt; v; sagt, das du keine Pointer speicherst, sondern Objekte. In C++ mußt du zwischen Objekte und Pointer unterscheiden. In C++ werden Klassen wie build-in Typen (int, long usw.) behandelt. Und umgekehrt auch. Das ist in Java nicht so: da hast du ne Trennung zwischen build-in und Klassen.</p>
<p><a href="http://www.kharchi.de/cppratgeber1.htm" rel="nofollow">http://www.kharchi.de/cppratgeber1.htm</a><br />
Pointer-Tutorial: <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-124532.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-124532.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1304851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1304851</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 13 Jun 2007 13:29:24 GMT</pubDate></item><item><title><![CDATA[Reply to Die 10.000 Zeiger-Frage on Wed, 13 Jun 2007 13:34:17 GMT]]></title><description><![CDATA[<p>Ahh, prima! Von dem ganzen Zeiger, Adressen und new- gelese, was ich wohl immer noch nicht drauf habe, hab ich schon nix mehr gesehen. Ich hatte plötzlich wieder die Idee, dass man mit new die Objekte erzeugt, aber dem ist ja natürlich nicht so.</p>
<p>Auch wenn man es nicht merkt, langsam gehts bergauf. Die erste Datenbankanbindung funktioniert schon und ein kleines Programm ist auch schon fertig. <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="😉"
    /> Thx again für Deine Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1304860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1304860</guid><dc:creator><![CDATA[plizer]]></dc:creator><pubDate>Wed, 13 Jun 2007 13:34:17 GMT</pubDate></item><item><title><![CDATA[Reply to Die 10.000 Zeiger-Frage on Wed, 13 Jun 2007 13:36:37 GMT]]></title><description><![CDATA[<p>Um eine Kopie zu vermeiden kann man hier auch</p>
<pre><code class="language-cpp">v.push_back(MyString(s));
</code></pre>
<p>schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1304862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1304862</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Wed, 13 Jun 2007 13:36:37 GMT</pubDate></item><item><title><![CDATA[Reply to Die 10.000 Zeiger-Frage on Wed, 13 Jun 2007 13:39:20 GMT]]></title><description><![CDATA[<p>Jep, so funktionierts! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1304867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1304867</guid><dc:creator><![CDATA[plizer]]></dc:creator><pubDate>Wed, 13 Jun 2007 13:39:20 GMT</pubDate></item></channel></rss>