<?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[wie greife ich auf eine Funktion zu in einer anderen Klasse]]></title><description><![CDATA[<p>Hi !</p>
<p>Ich habe einen Dialog in der Klasse CBuchenView</p>
<p>In der anderen Klasse CMessage ist eine Funktion</p>
<pre><code>CMessage::OnButton7()
</code></pre>
<p>, die ich ausführen möchte.</p>
<p>Beim Ausführen des Programms sagt es mir aber, dass es sich um einen nichtdeklarierten Begriff handelt.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/103898/wie-greife-ich-auf-eine-funktion-zu-in-einer-anderen-klasse</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 14:41:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/103898.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 14 Mar 2005 11:35:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Mon, 14 Mar 2005 11:35:11 GMT]]></title><description><![CDATA[<p>Hi !</p>
<p>Ich habe einen Dialog in der Klasse CBuchenView</p>
<p>In der anderen Klasse CMessage ist eine Funktion</p>
<pre><code>CMessage::OnButton7()
</code></pre>
<p>, die ich ausführen möchte.</p>
<p>Beim Ausführen des Programms sagt es mir aber, dass es sich um einen nichtdeklarierten Begriff handelt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744281</guid><dc:creator><![CDATA[heinz.hemer]]></dc:creator><pubDate>Mon, 14 Mar 2005 11:35:11 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Mon, 14 Mar 2005 22:33:38 GMT]]></title><description><![CDATA[<p>Also mit den Angaben kann man nicht viel sagen!<br />
Poste mal ein wenig Code oder gib wenigstens an, wo und wie die Klassen und die zugehörigen Variablen deklariert sind!</p>
<p>Gruß WinCoder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744659</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744659</guid><dc:creator><![CDATA[WinCoder]]></dc:creator><pubDate>Mon, 14 Mar 2005 22:33:38 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 06:17:09 GMT]]></title><description><![CDATA[<p>Das hat nichts mit MFC sondern mit Grundlagen von C++ zu tun.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744716</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Tue, 15 Mar 2005 06:17:09 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 06:17:22 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile.php?mode=viewprofile&amp;u=275" rel="nofollow">Unix-Tom</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=1" rel="nofollow">MFC mit dem Visual C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=15" rel="nofollow">C++</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/744717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744717</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Tue, 15 Mar 2005 06:17:22 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 09:24:55 GMT]]></title><description><![CDATA[<p>Also hier auf besonderen Wunsch ein bischen Code:</p>
<p>Ich habe mir mit dem MFC Klassenassistenten eine Anwendung erstellt.</p>
<p>In CBuchenView liegt der Hauptdialog. Dieser Dialog hat einen Button.</p>
<p>Wenn ich den anklicke öffnet sich ein Dialog aus einer anderen von mir erstellten Klasse CMessage</p>
<p>Dieser Dialog in CMessage hat einen Button OnButton3(), der eine Funktion in der Klasse CBuchenView ausführen soll</p>
<pre><code>void CMessage::OnButton3() 
{
OnButton54();
}
</code></pre>
<p>Aber das ausführen vom zweiten Dialog klappt nicht, so als ob das Programm den button54() nicht kennt.</p>
<p>Das ist das Problem.</p>
<p>Und bitte nicht schon wieder diesen Beitrag verschieben, weil es doch MFC ist !!!</p>
<pre><code>void CBuchenView::OnButton54() 
{
 ....... ( Programmcode )
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/744818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744818</guid><dc:creator><![CDATA[heinz.hemer]]></dc:creator><pubDate>Tue, 15 Mar 2005 09:24:55 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 09:55:18 GMT]]></title><description><![CDATA[<p>Woher soll der compiler wissen welche methode du da aufrufst.</p>
<p>In der form wie du es machst, nimmt er an dass es sich bei OnButton54 um eine methode der klasse CMessage handelt, oder eine andere funktion die zu keiner klasse gehört.</p>
<p>Wenn du die OnButton54 methode von CBuchenDialog aufrufen möchtest, dann brauchst du einen Referenz, einen Zeiger oder sogar den Dialog selbst in der CMessage-klasse. Nehmen wir an du hättest einen zeiger auf CBuchenDialog dann rufst du dessen OnButton54-methode folgendermaßen auf:</p>
<pre><code class="language-cpp">void CMessage::OnButton3(){
  ptr_to_cbuchen-&gt;OnButton54();
}
</code></pre>
<p>Kann natürlich nicht schaden zu prüfen ob der zeiger gültig ist.</p>
<p>sofar</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744836</guid><dc:creator><![CDATA[prolog]]></dc:creator><pubDate>Tue, 15 Mar 2005 09:55:18 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 10:02:50 GMT]]></title><description><![CDATA[<p>Der Button54 ist ja in CBuchenView - von dort aus klappt ja auch der Aufruf</p>
<p>Auch den zweiten Dialog in CMesaage kann ich aufrufen aus CBuchenView da ich mir in CBuchenView folgende Membervariable erstellt habe:</p>
<pre><code>CMessage m_dlg;
</code></pre>
<p>Nur wenn ich im zweiten Dialog bin und</p>
<pre><code>OnButton54()
</code></pre>
<p>aufrufe meckert dass Programm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744845</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744845</guid><dc:creator><![CDATA[heinz.hemer]]></dc:creator><pubDate>Tue, 15 Mar 2005 10:02:50 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 10:07:21 GMT]]></title><description><![CDATA[<p>Das hab ich doch grade geschrieben. Die methode ist in CBuchenView aber du versuchst sie in CMessage::OnButton3() aufzurufen ohne einen verweis auf eine instanz von CBuchenView. CMessage braucht einen zeiger oder eine reference (member fällt aus weil sie dann gegenseitig member von sich wären) auf CBuchenView.</p>
<p>Und dann kannst du sie auch aufrufen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744848</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744848</guid><dc:creator><![CDATA[prolog]]></dc:creator><pubDate>Tue, 15 Mar 2005 10:07:21 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 10:12:41 GMT]]></title><description><![CDATA[<p>Davon ab: glaubst du dass du übernächste Woche noch weisst was Button54 macht? Wofür Button3 steht? Button7?<br />
Denk dir mal ordentliche Bezeichner aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744850</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Tue, 15 Mar 2005 10:12:41 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 10:14:08 GMT]]></title><description><![CDATA[<p>Aha !</p>
<p>Dann nenn ich den Zeiger z.B.: ptr</p>
<pre><code>ptr-&gt;OnButton54();
</code></pre>
<p>Aber auch hier wird das Programm meckern - irgendwo im Quellcode muss ich doch den ptr bekannt machen ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744852</guid><dc:creator><![CDATA[heinz.hemer]]></dc:creator><pubDate>Tue, 15 Mar 2005 10:14:08 GMT</pubDate></item><item><title><![CDATA[Reply to wie greife ich auf eine Funktion zu in einer anderen Klasse on Tue, 15 Mar 2005 10:39:15 GMT]]></title><description><![CDATA[<p>Genau,</p>
<p>du könntest den ptr mit einem setter oder per ctor übergeben.</p>
<p>CMessage braucht dann einen member der ein pointer auf CBuchenView ist.</p>
<pre><code class="language-cpp">class CBuchenView;
class CMessage : public mfckram{
   public:
      CMessage(CBuchenView *ptr):ptr_to_buchen(ptr){}
   private:
     CBuchenView *ptr_to_buchen;

};

class CBuchenView : public andrermfckram{
  public:
    CBuchenView() : msg(this) {}
  private:
    CMessage msg;
};
</code></pre>
<p>So in etwa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/744866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/744866</guid><dc:creator><![CDATA[prolog]]></dc:creator><pubDate>Tue, 15 Mar 2005 10:39:15 GMT</pubDate></item></channel></rss>