<?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[Zeiger auf CDoc]]></title><description><![CDATA[<p>In meine Programm Xyz möchte ich in einer selbstgeschriebenen Klasse eine Methode aus der Klasse CXyzDoc aufrufen. Also brauche ich ja wohl einen Zeiger auf mein mein CXyzDoc-Objekt, aber den bekomm ich nicht rein in mine Klasse.</p>
<p>Also: Wie bekomme einen Zeiger mein CDoc-Objekt?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/159765/zeiger-auf-cdoc</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Jul 2026 09:50:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/159765.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Sep 2006 17:10:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:10:26 GMT]]></title><description><![CDATA[<p>In meine Programm Xyz möchte ich in einer selbstgeschriebenen Klasse eine Methode aus der Klasse CXyzDoc aufrufen. Also brauche ich ja wohl einen Zeiger auf mein mein CXyzDoc-Objekt, aber den bekomm ich nicht rein in mine Klasse.</p>
<p>Also: Wie bekomme einen Zeiger mein CDoc-Objekt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139833</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139833</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:10:26 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:13:57 GMT]]></title><description><![CDATA[<p>Erster Schritt: Eine bessere Fehlerbeschreibung als</p>
<p>Evolver schrieb:</p>
<blockquote>
<p>den bekomm ich nicht rein</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1139835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139835</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:13:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:19:21 GMT]]></title><description><![CDATA[<p><em>Er ist einfach zu groß</em> ... ok, genug der dummen Sprüche.</p>
<p>Ich habe halt versucht 'nen CXyzDoc-Zeiger als Membervariable anzulegen, aber schon das funktioniert nicht. Ich bekomme dazu keine Fehlermeldung, sondern erst an den Stellen, wo ich Objekte meine Klasse anlege.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139841</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:19:21 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:19:10 GMT]]></title><description><![CDATA[<p>Indem man ihn der entsprechenden Methode übergibt, oder im Konstruktor. Oder zu allerletzt indem man sich AfxGetApp besorgt und die Doctemplates enumeriert, oder das aktuelle Frame und darin den aktuellen CView und darin das aktuelle Dokument...</p>
<p>Sehr viele Wege führen nach Rom!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139842</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139842</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:19:10 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:35:24 GMT]]></title><description><![CDATA[<p>Also es sieht so aus:</p>
<pre><code class="language-cpp">//...
#include &quot;XyzDoc.h&quot;

class MyClass
{
private:
   CXyzDoc* docObj;
   // ...
public:
   void SetDoc(CXyzDoc* dO)
   {
      docObj = dO;
   }
   // ...
};
</code></pre>
<p>Ich würde dann in CXyzDoc die Methode MyClass.SetDoc() mit &quot;this&quot; als Parameter aufrufen wollen, aber das ganze funktioniert nicht. Beim Compilieren kommt für den obigen Code keine Fehlermeldung, aber für die Stellen, an denene ich Objekte von MyClass anlege.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139865</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:35:24 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 17:57:39 GMT]]></title><description><![CDATA[<p>Evolver schrieb:</p>
<blockquote>
<p>Beim Compilieren kommt für den obigen Code keine Fehlermeldung, aber für die Stellen, an denene ich Objekte von MyClass anlege.</p>
</blockquote>
<p>Bist du sicher, dass du auch mit dem Objekt hantierst, für das du SetDoc aufgerufen hast?</p>
<p>Du kannst nicht aus einem Schrank herausholen, was du in einen anderen Schrank hineingelegt hast.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139889</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139889</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 18 Sep 2006 17:57:39 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 18:51:27 GMT]]></title><description><![CDATA[<p>Es funktioniert schon unabhängig von der Methode SetDoc() nicht, alleine schon wenn ich nur XyzDoc.h inkludiere kommen dann beim Anlegen von Objekten (MyClass) schon Fehler. Kann es etwas damit zu tun haben, dass ich die Objekte in CxyzDoc anlege?</p>
<pre><code class="language-cpp">#include &quot;MyClass.h&quot;

class CXyzDoc : public CDocument
{
private:
   MyClass Obj1, Obj2;
//... usw. die typische CDoc, die immer erzeugt wird
};
</code></pre>
<p>Die andere Datei mit der Definition von MyClass ist wie oben in meinem letzten Posting. Ein &quot;#pragma once&quot; ist überall mit drin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139936</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Mon, 18 Sep 2006 18:51:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 18:52:45 GMT]]></title><description><![CDATA[<p>Evolver schrieb:</p>
<blockquote>
<p>Es funktioniert schon unabhängig von der Methode SetDoc() nicht, alleine schon wenn ich nur XyzDoc.h inkludiere kommen dann beim Anlegen von Objekten (MyClass) schon Fehler.</p>
</blockquote>
<p>Und wie lautet die Fehlermeldung?</p>
<p>Wie sehen die Konstruktoren von MyClass aus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1139939</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1139939</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 18 Sep 2006 18:52:45 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Mon, 18 Sep 2006 20:57:28 GMT]]></title><description><![CDATA[<p>Standartkonstruktor, ich habe in der Klasse noch nichts weiter.</p>
<pre><code class="language-cpp">MyClass Obj1, Obj2;  //  &lt;-- Fehler
</code></pre>
<blockquote>
<p>error C2146: syntax error : missing ';' before identifier 'Obj1'<br />
error C2501: 'CXyzDoc::MyClass' : missing storage-class or type specifiers<br />
error C2501: 'CXyzDoc::Obj1' : missing storage-class or type specifiers<br />
error C2501: 'CXyzDoc::Obj2' : missing storage-class or type specifiers</p>
</blockquote>
<p>Sobald ich also in &quot;MyClass.h&quot; die Datei &quot;XyzDoc.h&quot; inkludiere, kennt er MyClass in XyzDoc.h nichtmehr. Inkludiere ich sie nicht, kann ich meine Objekte anlegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1140035</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1140035</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Mon, 18 Sep 2006 20:57:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Tue, 19 Sep 2006 04:12:43 GMT]]></title><description><![CDATA[<p>Das hätte mir vorher auffallen müssen: Die beiden Headerdateien binden sich gegenseitig ein, das funktioniert nicht.</p>
<p>Nimm die Includedirektive aus MyClass.h raus und setze sie in MyClass.cpp. An die Stelle der Includedirektive schreibst du in MyClass.h eine Vorwärtsdeklaration:</p>
<pre><code class="language-cpp">class CXyzDoc;
</code></pre>
<p>Die reicht da aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1140071</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1140071</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Tue, 19 Sep 2006 04:12:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Tue, 19 Sep 2006 05:17:03 GMT]]></title><description><![CDATA[<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-125623.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-125623.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1140079</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1140079</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Tue, 19 Sep 2006 05:17:03 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf CDoc on Tue, 19 Sep 2006 10:19:09 GMT]]></title><description><![CDATA[<p>Danke MFK, genau da lag mein Fahler und - auch wenn ich schonmal irgendwann davon gehört habe - von alleine wäre ich nicht auf die Lösung gekommen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1140222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1140222</guid><dc:creator><![CDATA[Evolver]]></dc:creator><pubDate>Tue, 19 Sep 2006 10:19:09 GMT</pubDate></item></channel></rss>