<?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[Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich kämpfe mich - nach langer C/C++-Abstinenz - zur Zeit durch &quot;OOP für Dummies&quot;. Eigentlich dachte ich, ich hätte das mit der Kapselung verstanden:</p>
<p>&quot;_Niemand_ darf von außen auf als privat deklarierte Attribute einer Klasse (bzw. einer Instanz derselben) zugreifen.&quot;</p>
<p>Aber folgendes wird ja ständig verwendet:</p>
<pre><code>[cpp]
class Test
{
public:
	Test() : m_Attrib()
	{
	}
	Test(const Test&amp; test)
	{
		m_Attrib = test.m_Attrib;
	}
private:
	std::string m_Attrib;
};
[/cpp]
</code></pre>
<p>Der Copy-Konstruktor von Test greift hier also auf private Elemente der Instanz &quot;test&quot; zu.</p>
<p>Muss es daher heißen:<br />
&quot;_Niemand_ (außer Instanzen derselben Klasse) darf von außen auf als privat deklarierte Attribute einer Klasse (bzw. einer Instanz derselben) zugreifen.&quot;?</p>
<p>Was hab' ich da nicht verstanden?</p>
<p>Viele Grüße,<br />
Gnirx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/140192/kapselung-zugriff-auf-quot-private-quot-elemente</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 06:57:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/140192.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 12 Mar 2006 22:47:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Sun, 12 Mar 2006 22:48:43 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich kämpfe mich - nach langer C/C++-Abstinenz - zur Zeit durch &quot;OOP für Dummies&quot;. Eigentlich dachte ich, ich hätte das mit der Kapselung verstanden:</p>
<p>&quot;_Niemand_ darf von außen auf als privat deklarierte Attribute einer Klasse (bzw. einer Instanz derselben) zugreifen.&quot;</p>
<p>Aber folgendes wird ja ständig verwendet:</p>
<pre><code>[cpp]
class Test
{
public:
	Test() : m_Attrib()
	{
	}
	Test(const Test&amp; test)
	{
		m_Attrib = test.m_Attrib;
	}
private:
	std::string m_Attrib;
};
[/cpp]
</code></pre>
<p>Der Copy-Konstruktor von Test greift hier also auf private Elemente der Instanz &quot;test&quot; zu.</p>
<p>Muss es daher heißen:<br />
&quot;_Niemand_ (außer Instanzen derselben Klasse) darf von außen auf als privat deklarierte Attribute einer Klasse (bzw. einer Instanz derselben) zugreifen.&quot;?</p>
<p>Was hab' ich da nicht verstanden?</p>
<p>Viele Grüße,<br />
Gnirx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1014915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1014915</guid><dc:creator><![CDATA[Gnirx]]></dc:creator><pubDate>Sun, 12 Mar 2006 22:48:43 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Sun, 12 Mar 2006 22:57:46 GMT]]></title><description><![CDATA[<p>Hallo</p>
<blockquote>
<p>Muss es daher heißen:<br />
&quot;_Niemand_ (außer Instanzen derselben Klasse) darf von außen auf als privat deklarierte Attribute einer Klasse (bzw. einer Instanz derselben) zugreifen.&quot;?</p>
</blockquote>
<p>Korrekt.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1014919</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1014919</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 12 Mar 2006 22:57:46 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Sun, 12 Mar 2006 23:24:03 GMT]]></title><description><![CDATA[<p>akari schrieb:</p>
<blockquote>
<p>Korrekt.</p>
</blockquote>
<p>Wunderbar <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>
<p>Vielen Dank und bis zum nächsten Mal,<br />
Gnirx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1014925</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1014925</guid><dc:creator><![CDATA[Gnirx]]></dc:creator><pubDate>Sun, 12 Mar 2006 23:24:03 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 09:21:20 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Falsch, auch befreundete Klassen dürfen das...</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015052</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Mon, 13 Mar 2006 09:21:20 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 13:07:35 GMT]]></title><description><![CDATA[<p>wenn mans genau nehmen will, ist der satz &quot;_niemand_ darf von außen auf private membervariablen zugreifen&quot; völlig korrekt, denn eine instanz der klasse greift nicht von _außen_ auf die variable zu <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="😉"
    /></p>
<p>und das mit den friends ist so eine sache für sich. ich bin eh der meinung, dass die dinger aus dem standard geschmissen gehören.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015275</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015275</guid><dc:creator><![CDATA[blob]]></dc:creator><pubDate>Mon, 13 Mar 2006 13:07:35 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 20:44:03 GMT]]></title><description><![CDATA[<p>blob schrieb:</p>
<blockquote>
<p>und das mit den friends ist so eine sache für sich. ich bin eh der meinung, dass die dinger aus dem standard geschmissen gehören.</p>
</blockquote>
<p>naja, solange eine klasse ihre freunde deklariert und nicht umgekehrt, ist doch alles in ordnung. das erspart einem arbeit, aber verletzt das kapselungs-gebot nicht zwingend, wenn die friend-deklarationen innerhalb einer geschlossenen sinneinheit stattfinden.</p>
<p>(außerdem bist du nur ein unreg, auf dich hört kein standard-kommitee <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015709</guid><dc:creator><![CDATA[blabliblupp]]></dc:creator><pubDate>Mon, 13 Mar 2006 20:44:03 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 20:49:56 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Ich halte Freundschaften zwischen Klassen/Methoden auch für recht &quot;tricky&quot;, aber auch sehr hilfreich teilweise. Also etwas was mit bedacht eingesetzt ruhig im Standard bleiben sollte! <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>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015712</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015712</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Mon, 13 Mar 2006 20:49:56 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 23:05:39 GMT]]></title><description><![CDATA[<p>blob schrieb:</p>
<blockquote>
<p>wenn mans genau nehmen will, ist der satz &quot;_niemand_ darf von außen auf private membervariablen zugreifen&quot; völlig korrekt, denn eine instanz der klasse greift nicht von _außen_ auf die variable zu <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="😉"
    /></p>
</blockquote>
<p>Wobei sich mir dabei die Frage stellt, _warum_ die obige Konstruktion möglich ist. Ist der Hintergrund einfach der, dass man sonst kaum eine Chance hätte, Objekte zu kopieren? Man müsste die Kapselung ja praktisch vollständig aufgeben, da man ja jede (private) Membervariable doch wieder nach außen liefern müsste...</p>
<p>Grüße,<br />
Gnirx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015763</guid><dc:creator><![CDATA[Gnirx]]></dc:creator><pubDate>Mon, 13 Mar 2006 23:05:39 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Mon, 13 Mar 2006 23:09:58 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>das ist wohl genau der Grund dafür.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015764</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 13 Mar 2006 23:09:58 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Tue, 14 Mar 2006 08:27:46 GMT]]></title><description><![CDATA[<p>Wieso wird hier etwas nach aussen geliefert?</p>
<p>Du befindest Dich innerhalb einer Methode der Klasse X. Dort darfst Du auf alle (auch private) Elemente der Klasse X zugreifen. Dass das nur für &quot;this&quot; gilt ist nirgendwo gesagt. Wo ist da für Dich das &quot;von aussen&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015824</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015824</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Tue, 14 Mar 2006 08:27:46 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Tue, 14 Mar 2006 09:57:33 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Richtig, die einzigen &quot;Dinge&quot; die von außen auf private Member einer Klasse zugreifen können sind befreundete Methoden/Klassen.</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015839</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015839</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 14 Mar 2006 09:57:33 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Tue, 14 Mar 2006 10:19:15 GMT]]></title><description><![CDATA[<p>es wäre ja auch blödsinn, wenn niemand (nichtmal die klasse selber durch ihre eigenen methoden) auf die attribute zugreifen könnte!</p>
<p>Dann hast eine klasse mit attributen, die aber nie geändert, gesetzt oder ähnliches werden könnte....für was würdest due klasse denn dann brauchen??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1015852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1015852</guid><dc:creator><![CDATA[ser1al]]></dc:creator><pubDate>Tue, 14 Mar 2006 10:19:15 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Wed, 15 Mar 2006 22:19:12 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>Du befindest Dich innerhalb einer Methode der Klasse X. Dort darfst Du auf alle (auch private) Elemente der Klasse X zugreifen. Dass das nur für &quot;this&quot; gilt ist nirgendwo gesagt. Wo ist da für Dich das &quot;von aussen&quot;?</p>
</blockquote>
<p>Danke für die Erklärung - da lag wohl mein Fehler: Ich habe zu sehr an einzelne _Instanzen_ der Klasse X gedacht. Von diesem Standpunkt aus gesehen finde ich es durchaus &quot;überraschend&quot;, dass die Instanz instanz1 auf die privaten Member von instanz2 zugreifen darf.</p>
<p>Betrachtet man das ganze aber von deinem &quot;klassenbezogenen&quot; Standpunkt aus, gibt das aber plötzlich irgendwie Sinn.</p>
<p>Viele Grüße,<br />
Gnirx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1017194</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1017194</guid><dc:creator><![CDATA[Gnirx]]></dc:creator><pubDate>Wed, 15 Mar 2006 22:19:12 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Thu, 16 Mar 2006 06:59:14 GMT]]></title><description><![CDATA[<p>naja, von instanz2 kannst du auf die privaten member von instanz2 zugreifen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1017239</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1017239</guid><dc:creator><![CDATA[ser1al]]></dc:creator><pubDate>Thu, 16 Mar 2006 06:59:14 GMT</pubDate></item><item><title><![CDATA[Reply to Kapselung: Zugriff auf &amp;quot;private&amp;quot;-Elemente on Thu, 16 Mar 2006 14:19:49 GMT]]></title><description><![CDATA[<p>ser1al schrieb:</p>
<blockquote>
<p>naja, von instanz2 kannst du auf die privaten member von instanz2 zugreifen!</p>
</blockquote>
<p>Sagblos! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1017572</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1017572</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Thu, 16 Mar 2006 14:19:49 GMT</pubDate></item></channel></rss>