<?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[Protected Attribute - ja&#x2F;nein?]]></title><description><![CDATA[<p>Normalerweise sollte man ja alle Attribute private machen und falls nötig getter/setter bereitstellen (wenn man nicht gerade nur ne sammlung von daten hat).</p>
<p>Wie handhabt ihr das bei Attributen bei Basisklassen?<br />
Macht ihr die protected, oder macht ihr die private und tut bei protected getter für abgeleitete Basisklassen rein?<br />
Oder je nach Situation (was für Sonderfälle gibt es?)<br />
Was spricht dafür, was dagegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/290642/protected-attribute-ja-nein</link><generator>RSS for Node</generator><lastBuildDate>Tue, 18 Aug 2026 07:15:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/290642.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 31 Jul 2011 12:20:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 12:20:21 GMT]]></title><description><![CDATA[<p>Normalerweise sollte man ja alle Attribute private machen und falls nötig getter/setter bereitstellen (wenn man nicht gerade nur ne sammlung von daten hat).</p>
<p>Wie handhabt ihr das bei Attributen bei Basisklassen?<br />
Macht ihr die protected, oder macht ihr die private und tut bei protected getter für abgeleitete Basisklassen rein?<br />
Oder je nach Situation (was für Sonderfälle gibt es?)<br />
Was spricht dafür, was dagegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100043</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100043</guid><dc:creator><![CDATA[*Q* 1]]></dc:creator><pubDate>Sun, 31 Jul 2011 12:20:21 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 12:29:06 GMT]]></title><description><![CDATA[<p>Ich mache die Attribute private und wenn nötig protected Operationen. Getter sind ev. ja nicht mal nötig, wenn die &quot;arbeit&quot; in der Basis Klasse stattfinden kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100046</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sun, 31 Jul 2011 12:29:06 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:04:32 GMT]]></title><description><![CDATA[<p>Q schrieb:</p>
<blockquote>
<p>Wie handhabt ihr das bei Attributen bei Basisklassen?<br />
Macht ihr die protected, oder macht ihr die private und tut bei protected getter für abgeleitete Basisklassen rein?</p>
</blockquote>
<p>Weder noch. Lieber Tuer als Getter und Setter.<br />
Attribute nur private.<br />
Wenn mal ein Getter sein muß, kann der auch public sein.<br />
Setter sind zu selten, um dafür eine Regel zu haben, fürchte ich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100075</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:04:32 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:21:02 GMT]]></title><description><![CDATA[<p>Was meinstn mit Tür?</p>
<p>Das gleiche wie</p>
<blockquote>
<p>Ich mache die Attribute private und wenn nötig protected Operationen. Getter sind ev. ja nicht mal nötig, wenn die &quot;arbeit&quot; in der Basis Klasse stattfinden kann.</p>
</blockquote>
<p>?</p>
<p>Und natürlich geht es nur um Attribute (oder operationen dadrauf), bei denen es überhaupt sinnvoll ist, der abgeleiteten Klasse Zugriff zu geben, und nicht darum, ALLES protected oder mit Getter/Setter zu machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100078</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100078</guid><dc:creator><![CDATA[*Q* 1]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:21:02 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:26:48 GMT]]></title><description><![CDATA[<p>Mach doch mal ein Beispiel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100080</guid><dc:creator><![CDATA[http_&#x2F;&#x2F;www.amazon.de&#x2F;s?_e]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:26:48 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:27:42 GMT]]></title><description><![CDATA[<p>Q schrieb:</p>
<blockquote>
<p>Was meinstn mit Tür?</p>
</blockquote>
<p>Tuer wie Macher, nicht Tür wie Fenster. Lustiges Wortspiel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100081</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100081</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:27:42 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:43:45 GMT]]></title><description><![CDATA[<p>Ich frage mich, wie Du auf Getter verzichten kannst. Ich habe einige und könnte die auch nicht wegkriegen, indem ich umstrukturiere. Ich habe einfach komplizierte Verhältnisse zwischen den Strukturen und komme nicht drum herum, manchmal Objekt A um Objekt B zu bitten, weil Objekt C das für irgendwelche Abfragen benötigt. Oder ich benötige Teile von B, dann nehme ich mir diese. Aber die kriege ich ja auch nur wieder über Getter.</p>
<p>Und in der UI-Programmierung ist es ja noch krasser. Da wird ja mit Gettern und Settern nur so um sich geschmissen. Wie würdest Du ein UI-Framework denn anders aufbauen? Bist Du darüber hinaus nur gegen Getter oder auch gegen Setter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100082</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:43:45 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Sun, 31 Jul 2011 14:50:01 GMT]]></title><description><![CDATA[<p>Mehr gegen Setter als gegen Getter. Getter sind nicht böse. Jeder darf mein Objekt jederzeit ausfragen.</p>
<p>Setter wie setSize() mag ich gar nicht zugunsten von resize(), setZähler()/setNenner() sind auch doof, dafür gibt es den Konstruktor.</p>
<p>Zugegeben, bei UI-Frameworks wimmelt es davon.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100083</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 31 Jul 2011 14:50:01 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Mon, 01 Aug 2011 11:31:00 GMT]]></title><description><![CDATA[<p>Okay, das freut mich. Hatte schon befürchtet, ich hätte etwas Grundsätzliches missverstanden.</p>
<p>Bei den UI-Dingern dient das halt zur Änderung von Eigenschaften. In der Backend-Schicht werden Dinge ja oft automatisch geändert, wie du es jetzt auch entwickeln würdest. Viel davon wird aber nur auf das UI übertragen. Das ist ja auch normal, das UI hat ja meistens keine komplexe Logik mehr, sondern dient nur als (evtl. adaptiertes) Abbild.</p>
<p>Und bei QT z.B. dient das dann auch einfach der Erweiterung. Es wird automatisch Code generiert, der die ctors nutzt. Möchte man etwas ändern, ist es also einfacher im Nachhinein Eigenschaften zu ändern, als einen super-dynamischen ctor zu basteln.</p>
<p>Dein Ansatz geht eben mehr in die Richtung, dass man komplexe Logik implementiert. Dann sollte nicht einfach etwas gesetzt werden, sondern es sollte geschaut werden, wer was macht und wofür verantwortlich ist. Aber im UI trifft das wohl nicht so ganz zu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100354</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100354</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Mon, 01 Aug 2011 11:31:00 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Mon, 01 Aug 2011 11:36:06 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Q schrieb:</p>
<blockquote>
<p>Was meinstn mit Tür?</p>
</blockquote>
<p>Tuer wie Macher, nicht Tür wie Fenster. Lustiges Wortspiel.</p>
</blockquote>
<p>Ach... Du meinst doer und nicht door <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/2100356</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100356</guid><dc:creator><![CDATA[XSpille]]></dc:creator><pubDate>Mon, 01 Aug 2011 11:36:06 GMT</pubDate></item><item><title><![CDATA[Reply to Protected Attribute - ja&#x2F;nein? on Mon, 01 Aug 2011 11:46:10 GMT]]></title><description><![CDATA[<p>Da muss man sich ja direkt nach sprachlichen Zusammenhängen zwischen den beiden Wörtern in die Kammer zurückziehen und in der Dunkelheit viele Nächte und Tage meditieren, bis der Mond die Erde mehrfach umkreist hat, um dann zu der Erkenntnis zu kommen, dass...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2100362</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2100362</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Mon, 01 Aug 2011 11:46:10 GMT</pubDate></item></channel></rss>