<?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 classe]]></title><description><![CDATA[<p>gibt es eine möglichkeit zubestimmen das man eine funktion<br />
in der selben und in einer andere classe verwenden darf aber in einer anderen nicht</p>
<pre><code class="language-cpp">class My{
  int x;
  My();
  int get();  
};
My::My():x(10){}
int My::get(){return x;}

class My2{
  My xx;
  int get();
}
int You::get(){return xx.get();}  // in der classe ist es erlaubt get zu benutzen

class You{
  My xx;
  int get();
}
int My2::get(){return xx.get();} //in der klasse is es nich erlaubt get zu benutzen
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/197863/frage-zu-classe</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 13:41:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/197863.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Nov 2007 15:16:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to frage zu classe on Thu, 15 Nov 2007 15:17:38 GMT]]></title><description><![CDATA[<p>gibt es eine möglichkeit zubestimmen das man eine funktion<br />
in der selben und in einer andere classe verwenden darf aber in einer anderen nicht</p>
<pre><code class="language-cpp">class My{
  int x;
  My();
  int get();  
};
My::My():x(10){}
int My::get(){return x;}

class My2{
  My xx;
  int get();
}
int You::get(){return xx.get();}  // in der classe ist es erlaubt get zu benutzen

class You{
  My xx;
  int get();
}
int My2::get(){return xx.get();} //in der klasse is es nich erlaubt get zu benutzen
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1403749</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1403749</guid><dc:creator><![CDATA[kiba91]]></dc:creator><pubDate>Thu, 15 Nov 2007 15:17:38 GMT</pubDate></item><item><title><![CDATA[Reply to frage zu classe on Thu, 15 Nov 2007 15:21:22 GMT]]></title><description><![CDATA[<p>Nur auf die eigene Klasse kannst du die Funktion einschränken, indem du sie in den private-Bereich packst. Wenn du einzelne Ausnahmen erlauben willst, kannst du den entsprechenden Klassen friend-Zugang gewähren:</p>
<pre><code class="language-cpp">class My
{
private:
  int x;
  int get();  
public:
  My();
  friend class My2;
};
My::My():x(10){}
int My::get(){return x;}

class My2{
  My xx;
  int get();
}
int My2::get(){return xx.get();}  // My2 ist friend, kommt also an die privaten Member dran

class You{
  My xx;
  int get();
}
int You::get(){return xx.get();} // You ist *kein* friend, der Compiler verweigert die Zusammenarbeit
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1403758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1403758</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 15 Nov 2007 15:21:22 GMT</pubDate></item><item><title><![CDATA[Reply to frage zu classe on Thu, 15 Nov 2007 15:57:27 GMT]]></title><description><![CDATA[<p>kann man mit den befehl friend<br />
auf die ganze klasse zu greifen oder nur da wo man es definirt hat (z.b. im public bereich)</p>
<p>geht so was auch:<br />
wenn man jetzt ein pointer hat der auf xx zeigt<br />
kann man doch damit auch auf private dinge zu greifen<br />
oder?</p>
<pre><code class="language-cpp">class My2{
  My xx;
  int get();
  public:
  My* getpointer();
}
int My2::get(){return xx.get();}
My* My2::getpointer(){return &amp;xx;}  
getpointer()-&gt;x = 20; //kann man dann einfach so auf x zu greifen
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1403787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1403787</guid><dc:creator><![CDATA[kiba91]]></dc:creator><pubDate>Thu, 15 Nov 2007 15:57:27 GMT</pubDate></item><item><title><![CDATA[Reply to frage zu classe on Thu, 15 Nov 2007 17:52:20 GMT]]></title><description><![CDATA[<p>Bei friend ist es egal, wo es innerhalb der Klassendeklaration steht, die Friend-Klasse (oder alternativ kann man auch einzelnen Funktionen angeben) hat immer Zugriff auf alle Daten (public, protected und private).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1403870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1403870</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Thu, 15 Nov 2007 17:52:20 GMT</pubDate></item><item><title><![CDATA[Reply to frage zu classe on Fri, 16 Nov 2007 06:53:24 GMT]]></title><description><![CDATA[<p>Btw, auf die Daten zugreifen darf nur derjenige, der als friend definiert wurde - d.h. die Zuweisung 'getpointer()-&gt;x = 20;' funktioniert nur im Inneren einer My2-Methode.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404083</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 16 Nov 2007 06:53:24 GMT</pubDate></item></channel></rss>