<?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[Frage zu this-&amp;gt;]]></title><description><![CDATA[<p>Hallo</p>
<pre><code class="language-cpp">DisplayMessage(&quot;Meldung von main()!&quot;);   // Wieso bekommt die Funktion hier nur 1 Parameter ?
</code></pre>
<p>Müsste die Funktion nich eigentlich 2 Parameter bekommen ?</p>
<pre><code class="language-cpp">void DisplayMessage( char* pMsg, Window *pParent = NULL);
</code></pre>
<pre><code class="language-cpp">// Zuerst Dateien einbinden
#include &lt;iostream&gt;
#include &lt;iomanip&gt;
#include &lt;windows&gt;

using namespace std;

class Window;

void DisplayMessage( char* pMsg, Window *pParent = NULL);

class Window
{   unsigned long foreColor, backColor;
 public:
   void GetColor(unsigned long &amp;fc, unsigned long &amp;bc);
   void DoAnything();
};

void Window::GetColor(unsigned long &amp;fc, unsigned long &amp;bc)
{
   fc = 1;
   bc = 1;
}

void Window::DoAnything()
{

cout&lt;&lt;&quot;Adresse von myWin Objekt aus Memberfunktion aufgerufen: &quot; &lt;&lt; this &lt;&lt; endl;

   DisplayMessage(&quot;Fenstermeldung!&quot;,this); // DisplayMessage bekommt die Objekt Adresse von myWin.DoAnything();

   /*/
        Der zweite Parameter der Funktion DisplayMessage ist nicht NULL also ist die
        Vordergrundfarbe = 1 und die Hintergrundfarbe auch = 1
   /*/

}

void DisplayMessage( char*  pMsg , Window *pParent )
{

   unsigned long fc, bc;

   if (pParent == NULL)
   {

      fc = 2;
      bc = 2;
   }

   else
   {
      pParent-&gt;GetColor(fc, bc);
   }

   cout &lt;&lt; &quot;Vordergrund: &quot; &lt;&lt; fc;
   cout &lt;&lt; &quot;, Hintergrund: &quot;  &lt;&lt; bc &lt;&lt; endl;
   cout &lt;&lt; &quot;Text ist : &quot; &lt;&lt; pMsg &lt;&lt; endl&lt;&lt;endl;
}

int main()
{
   Window myWin;

   cout&lt;&lt;&quot;Adresse von myWin Objekt aus Hauptprogramm aufgerufen: &quot; &lt;&lt; &amp; myWin &lt;&lt;endl;
   myWin.DoAnything();

 DisplayMessage(&quot;Meldung von main()!&quot;);   // Wieso bekommt die Funktion hier nur 1 Parameter ? 

system(&quot;PAUSE&quot;);

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/269597/frage-zu-this-gt</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 02:30:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/269597.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 28 Jun 2010 09:52:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu this-&amp;gt; on Mon, 28 Jun 2010 09:52:24 GMT]]></title><description><![CDATA[<p>Hallo</p>
<pre><code class="language-cpp">DisplayMessage(&quot;Meldung von main()!&quot;);   // Wieso bekommt die Funktion hier nur 1 Parameter ?
</code></pre>
<p>Müsste die Funktion nich eigentlich 2 Parameter bekommen ?</p>
<pre><code class="language-cpp">void DisplayMessage( char* pMsg, Window *pParent = NULL);
</code></pre>
<pre><code class="language-cpp">// Zuerst Dateien einbinden
#include &lt;iostream&gt;
#include &lt;iomanip&gt;
#include &lt;windows&gt;

using namespace std;

class Window;

void DisplayMessage( char* pMsg, Window *pParent = NULL);

class Window
{   unsigned long foreColor, backColor;
 public:
   void GetColor(unsigned long &amp;fc, unsigned long &amp;bc);
   void DoAnything();
};

void Window::GetColor(unsigned long &amp;fc, unsigned long &amp;bc)
{
   fc = 1;
   bc = 1;
}

void Window::DoAnything()
{

cout&lt;&lt;&quot;Adresse von myWin Objekt aus Memberfunktion aufgerufen: &quot; &lt;&lt; this &lt;&lt; endl;

   DisplayMessage(&quot;Fenstermeldung!&quot;,this); // DisplayMessage bekommt die Objekt Adresse von myWin.DoAnything();

   /*/
        Der zweite Parameter der Funktion DisplayMessage ist nicht NULL also ist die
        Vordergrundfarbe = 1 und die Hintergrundfarbe auch = 1
   /*/

}

void DisplayMessage( char*  pMsg , Window *pParent )
{

   unsigned long fc, bc;

   if (pParent == NULL)
   {

      fc = 2;
      bc = 2;
   }

   else
   {
      pParent-&gt;GetColor(fc, bc);
   }

   cout &lt;&lt; &quot;Vordergrund: &quot; &lt;&lt; fc;
   cout &lt;&lt; &quot;, Hintergrund: &quot;  &lt;&lt; bc &lt;&lt; endl;
   cout &lt;&lt; &quot;Text ist : &quot; &lt;&lt; pMsg &lt;&lt; endl&lt;&lt;endl;
}

int main()
{
   Window myWin;

   cout&lt;&lt;&quot;Adresse von myWin Objekt aus Hauptprogramm aufgerufen: &quot; &lt;&lt; &amp; myWin &lt;&lt;endl;
   myWin.DoAnything();

 DisplayMessage(&quot;Meldung von main()!&quot;);   // Wieso bekommt die Funktion hier nur 1 Parameter ? 

system(&quot;PAUSE&quot;);

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1918292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918292</guid><dc:creator><![CDATA[This-&amp;gt;]]></dc:creator><pubDate>Mon, 28 Jun 2010 09:52:24 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu this-&amp;gt; on Mon, 28 Jun 2010 09:55:27 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void DisplayMessage( char* pMsg, Window *pParent = NULL);
</code></pre>
<p>Das = NULL heißt das im Falle einer Nichtangabe des Parameters dieser den Wert NULL erhält.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918293</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Mon, 28 Jun 2010 09:55:27 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu this-&amp;gt; on Mon, 28 Jun 2010 10:05:32 GMT]]></title><description><![CDATA[<p>Ty für die Antwort.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1918295</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1918295</guid><dc:creator><![CDATA[This-&amp;gt;]]></dc:creator><pubDate>Mon, 28 Jun 2010 10:05:32 GMT</pubDate></item></channel></rss>