<?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[Naming Guide]]></title><description><![CDATA[<p>Ich weiß, immer kontroverses Thema, aber ich habe schon länger nicht mehr mit C++ gearbeitet.</p>
<p>Ist es eher usus den C++ StdLib/Boost-Weg einzuschlagen oder doch eher Klassen mit Großbuchstaben zu Beginn? Hat sich da schon eine Art Default-NamingGuide durchgesetzt?</p>
<pre><code class="language-cpp">class MyType vs. my_type
{
    blubb vs. get_blubb vs. getBlubb vs. GetBlubb
    blubb vs. set_blubb vs. setBlubb vs. SetBlubb
}
</code></pre>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/307343/naming-guide</link><generator>RSS for Node</generator><lastBuildDate>Thu, 06 Aug 2026 19:01:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/307343.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 24 Aug 2012 01:31:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 01:31:02 GMT]]></title><description><![CDATA[<p>Ich weiß, immer kontroverses Thema, aber ich habe schon länger nicht mehr mit C++ gearbeitet.</p>
<p>Ist es eher usus den C++ StdLib/Boost-Weg einzuschlagen oder doch eher Klassen mit Großbuchstaben zu Beginn? Hat sich da schon eine Art Default-NamingGuide durchgesetzt?</p>
<pre><code class="language-cpp">class MyType vs. my_type
{
    blubb vs. get_blubb vs. getBlubb vs. GetBlubb
    blubb vs. set_blubb vs. setBlubb vs. SetBlubb
}
</code></pre>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244986</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244986</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Fri, 24 Aug 2012 01:31:02 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 01:59:17 GMT]]></title><description><![CDATA[<p>Wirklich durchgesetzt hat sich nichts. Mir scheint der &quot;Java-Weg&quot; (so nenne ich ihn mal) ist beliebter. Ich tendiere momentan jedoch eher zur STL/boost Benennung. Einfach weil ich .size() lieber mag als .getSize() - und .Size() geht natürlich garnicht. <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>Edit: Also so</p>
<pre><code class="language-cpp">template &lt;typename ForwardIterator, std::size_t BufSize&gt;
class foo : basic_bar&lt;ForwardIterator, BufSize&gt;
{
  std::vector&lt;char&gt; blocks_;

public:
  foo(std::size_t multi)
    : block_(BufSize * multi)
  {}

  std::size_t size() const
  {
    return blocks_.size();
  }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2244990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244990</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 24 Aug 2012 01:59:17 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 03:31:01 GMT]]></title><description><![CDATA[<p>Wenn du Getter&amp;Setter hast, dann überladest du die Funktion oder heißen deine Setter dann doch set_blubba()? Datentypen alle kleingeschrieben?</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244997</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244997</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Fri, 24 Aug 2012 03:31:01 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:12:47 GMT]]></title><description><![CDATA[<p>Getter und Setter vermeide ich wenn möglich. Bzw. Getter sehe ich mehr als Eigenschaftsabfrage (siehe .size()). Wenn man eh vollen Zugriff hat, überlege ich mir auch die Variable gleich public zu machen. Ansonsten halte ich mich an die Standardbibliothek. (Siehe z.B. <a href="http://en.cppreference.com/w/cpp/numeric/complex/real" rel="nofollow">http://en.cppreference.com/w/cpp/numeric/complex/real</a>) Aber wie gesagt, insbesondere reine Setter habe ich eigentlich so gut wie nie.</p>
<p>Datentypen schreibe ich (wie alles andere auch) klein. Nur Templateparameter schreibe ich groß.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245007</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245007</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:12:47 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:14:27 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/25760">@cooky451</a>: Wie willst du das Scott beibringen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245008</guid><dc:creator><![CDATA[Aber...]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:14:27 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:25:07 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Wenn man eh vollen Zugriff hat, überlege ich mir auch die Variable gleich public zu machen.</p>
</blockquote>
<p>Und wie realisierst du Plausibilitätsprüfungen? Wie realisierst du Dinge wie Benachrichtigungen? (z.B. notifyObservers, emit foobar, propertyChanged)</p>
<p>Attribute haben private zu sein, außer es sind Konstanten. Es gibt zwar häufig Fälle, wo man es nicht braucht, aber das führt zu Inkonsistenz im Projekt, manchmal brauchst du einen Methodenaufruf, manchmal einen direkten Attributverweiß.</p>
<p>Zum Topic, ich benutze für Methoden und Funktionen eigentlich lower-camel-case, wie zum Beispiel in Java, aber anstelle von getFoo() und setFoo(int) überlade ich lieber foo() const mit foo(int).<br />
Klassen und Verwandte schreibe ich Upper-Camel-Case.<br />
Konstanten werden bei mir groß geschrieben mit _ als Worttrenner.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245010</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245010</guid><dc:creator><![CDATA[Cyres]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:25:07 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:30:57 GMT]]></title><description><![CDATA[<p>Cyres schrieb:</p>
<blockquote>
<p>cooky451 schrieb:</p>
<blockquote>
<p>Wenn man eh vollen Zugriff hat, überlege ich mir auch die Variable gleich public zu machen.</p>
</blockquote>
<p>Und wie realisierst du Plausibilitätsprüfungen?</p>
</blockquote>
<p>Das nennt man dann nicht vollen Zugriff. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Cyres schrieb:</p>
<blockquote>
<p>Wie realisierst du Dinge wie Benachrichtigungen? (z.B. notifyObservers, emit foobar, propertyChanged)</p>
</blockquote>
<p>Garnicht wenn ich es nicht brauche.<br />
Du schreibst ernsthaft <strong>alle</strong> deine Klassen mit dem Gedanken im Hinterkopf, jemand könnte die mal &quot;observen&quot; wollen? Geil. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>&quot;Wenn es sinnvoll ist X zu machen, dann mache ich das.&quot;<br />
&quot;Hey! Hier habe ich Situation Y und Z in der X nicht sinnvoll ist!!1!&quot;</p>
<p>Ne.. so läuft das nicht. Du musst schon argumentieren, warum das <strong>nie</strong> sinnvoll ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245012</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245012</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:30:57 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:27:53 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Cyres schrieb:</p>
<blockquote>
<p>cooky451 schrieb:</p>
<blockquote>
<p>Wenn man eh vollen Zugriff hat, überlege ich mir auch die Variable gleich public zu machen.</p>
</blockquote>
<p>Und wie realisierst du Plausibilitätsprüfungen?</p>
</blockquote>
<p>Das nennt man dann nicht vollen Zugriff. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Cyres schrieb:</p>
<blockquote>
<p>Wie realisierst du Dinge wie Benachrichtigungen? (z.B. notifyObservers, emit foobar, propertyChanged)</p>
</blockquote>
<p>Garnicht wenn ich es nicht brauche.<br />
Du schreibst ernsthaft <strong>alle</strong> deine Klassen mit dem Gedanken im Hinterkopf, jemand könnte die mal &quot;observen&quot; wollen? Geil. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
</blockquote>
<p>Habe oben noch was editiert:</p>
<p>Cyres schrieb:</p>
<blockquote>
<p>Es gibt zwar häufig Fälle, wo man es nicht braucht, aber das führt zu Inkonsistenz im Projekt, manchmal brauchst du einen Methodenaufruf, manchmal einen direkten Attributverweiß.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2245013</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245013</guid><dc:creator><![CDATA[Cyres]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:27:53 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:36:06 GMT]]></title><description><![CDATA[<p>Cyres schrieb:</p>
<blockquote>
<p>Habe oben noch was editiert:</p>
<p>Cyres schrieb:</p>
<blockquote>
<p>Es gibt zwar häufig Fälle, wo man es nicht braucht, aber das führt zu Inkonsistenz im Projekt, manchmal brauchst du einen Methodenaufruf, manchmal einen direkten Attributverweiß.</p>
</blockquote>
</blockquote>
<p>Ich nutze auch Templates und &quot;normale&quot; Funktionen in einem Projekt, das wird deshalb nicht gleich inkonsistent. Aber da du jetzt wenigstens ein sinnvolles Argument gebracht hast kann ich den Kopf ja wieder vom Tisch nehmen und jeder kann machen was er für richtig hält. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2245016</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245016</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:36:06 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:48:08 GMT]]></title><description><![CDATA[<p>Na, ich geb mal meine Haltung zu Benennung ab:</p>
<ul>
<li>Klassennamen groß.</li>
<li>Funktionsnamen immer klein, seien es globale oder Membermethoden</li>
<li>Variablennamen fangen in der Klasse mit dem Präfix m an, und sind dann immer groß. Lokale oder globale Variablen fangen immer klein an.</li>
<li>Jetzt kommt eine Ausnahme. Membervariablen, die nicht gekapselt sind, also als <code>public</code> markiert, werden wie lokale Variablen benannt.</li>
<li>Setter oder getter mach ich durch Überladung (wie <code>std::stringstream::str()</code> ). Bspw.:</li>
</ul>
<pre><code class="language-cpp">uint8_t size() const;
void size(uint8_t const);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2245017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245017</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:48:08 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:48:56 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Wenn man eh vollen Zugriff hat, überlege ich mir auch die Variable gleich public zu machen.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> Ich dachte schon, mit der Haltung wäre ich alleine! thx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245018</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245018</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:48:56 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 05:49:22 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Aber da du jetzt wenigstens ein sinnvolles Argument gebracht hast kann ich den Kopf ja wieder vom Tisch nehmen</p>
</blockquote>
<p>Da bin ich ja beruhigt, sonst wird das tippen für dich zur Herausforderung <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>Wenn man für sich selber programmiert oder das ganze Team den Stil verfolgt sollte das auch nicht zum Problem werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245019</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245019</guid><dc:creator><![CDATA[Cyres]]></dc:creator><pubDate>Fri, 24 Aug 2012 05:49:22 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 06:58:36 GMT]]></title><description><![CDATA[<blockquote>
<p>Attribute haben private zu sein, außer es sind Konstanten</p>
</blockquote>
<p>Quatsch.</p>
<p>Aber hey, wenn man sonst keine Probleme hat, dann kann man sich auch ueber die Benamung auslassen. Im Moment folge ich dem STL-Vorbild.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245028</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245028</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 24 Aug 2012 06:58:36 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 07:42:40 GMT]]></title><description><![CDATA[<p>Ich würde nie eine Variable public machen. Nie nie nie nie.</p>
<p>Einzige Ausnahme: alle Variablen sind public.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245045</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 24 Aug 2012 07:42:40 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 08:03:38 GMT]]></title><description><![CDATA[<p>In meinem aktuellen Projekt ist das eher die Regel, als die Ausnahme, da viele Klassen fuer geometrische Objekte benoetigt werden. Punkt, Strecke, Strahl, Kreis, Rechteck, ... fuer 2, 3 und 4 Dimensionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245053</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 24 Aug 2012 08:03:38 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 08:06:21 GMT]]></title><description><![CDATA[<p>knivil schrieb:</p>
<blockquote>
<p>In meinem aktuellen Projekt ist das eher die Regel, als die Ausnahme, da viele Klassen fuer geometrische Objekte benoetigt werden. Punkt, Strecke, Strahl, Kreis, Rechteck, ... fuer 2, 3 und 4 Dimensionen.</p>
</blockquote>
<p>Klar - aber ein Punkt hat 2-3 public Variablen und keine private Variable. Korrekt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245055</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 24 Aug 2012 08:06:21 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 09:20:59 GMT]]></title><description><![CDATA[<p>Ja!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245078</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245078</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 24 Aug 2012 09:20:59 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 15:26:20 GMT]]></title><description><![CDATA[<p>Gibt es irgendwelche Besonderheiten in C++ bzgl. Member-Variablen-Platzierung in der Klasse? Oben? Unten? static const oben oder unten?</p>
<p>Da ja die Reihenfolge der Member-Variablen untereinander ja für die Initialisierung wichtig ist, spielt vielleicht auch die sonstige Anordnung (eben bspw. in Bezug auf static const) eine Rolle...</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245230</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245230</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Fri, 24 Aug 2012 15:26:20 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 16:52:58 GMT]]></title><description><![CDATA[<p>Ich finde, Attribute müssen auch private sein. Nicht nur im Bezug auf ein Event-System oder Plausibilitätsprüfungen, sondern auch im Bezug auf irgendeine andere Erweiterung/Änderung. Sagen wir, irgendein Attribut war vorher einfach festgelegt, jetzt strukturiert man aber um und merkt, dass es redundant ist, also löscht man es... wenn man eine Methode hat, kann die jetzt eben Mal schnell aus den anderen Attributen den Wert berechnen und zurückliefern, kein Problem.</p>
<p>Wenn das Attribut public war, dann hat man die Möglichkeit nicht. Dann muss man es drin lassen oder überall, wo es gebraucht wird, ersetzen. Darum finde ich öffentliche Attribute für Klassen nicht gut.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/26836">@Topic</a>:<br />
Ich schreibe Klassennamen groß und Methodennamen auch groß. Private Methoden/Funktionen mache ich hingegen klein.</p>
<p>Ich glaube, für die Anordnung von Variablen ist das völlig egal. Ich gewöhne mir mittlerweile an, den public Teil oben zu machen und den private Teil darunter, einfach damit man beim Öffnen der Headerdatei zuerst die Schnittstelle und dann die Interna sieht. Statisches kommt bei mir auch im jeweiligen Block immer nach oben. Wenn ich private Methoden habe, stelle ich die über die jeweiligen Attribute (mit der gleichen Begründung wie public/private, dass private Methoden eben für mich &quot;abstrakter&quot; als die Attribute sind).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245253</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Fri, 24 Aug 2012 16:52:58 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 17:12:06 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Wirklich durchgesetzt hat sich nichts. Mir scheint der &quot;Java-Weg&quot; (so nenne ich ihn mal) ist beliebter. Ich tendiere momentan jedoch eher zur STL/boost Benennung. Einfach weil ich .size() lieber mag als .getSize() - und .Size() geht natürlich garnicht. <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>Edit: Also so</p>
<pre><code class="language-cpp">template &lt;typename ForwardIterator, std::size_t BufSize&gt;
class foo : basic_bar&lt;ForwardIterator, BufSize&gt;
{
  std::vector&lt;char&gt; blocks_;

public:
  foo(std::size_t multi)
    : block_(BufSize * multi)
  {}

  std::size_t size() const
  {
    return blocks_.size();
  }
};
</code></pre>
</blockquote>
<p>finde ich auch besser, das wirkt dann eher so, als wäre size tatsächlich ne eigenschaft des objektes(was es ja auch ist) und nicht nur irgendeine random variable</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245256</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245256</guid><dc:creator><![CDATA[Namenloser324]]></dc:creator><pubDate>Fri, 24 Aug 2012 17:12:06 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 18:27:46 GMT]]></title><description><![CDATA[<blockquote>
<p>spielt vielleicht auch die sonstige Anordnung</p>
</blockquote>
<p>Wegen padding vielleicht.</p>
<blockquote>
<p>jetzt strukturiert man aber um und merkt</p>
</blockquote>
<p>Ich schreibe meine Quelltexte aber nicht in Bezug auf &quot;vielleicht will ich das ja irgendwann so oder so machen&quot; .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245271</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 24 Aug 2012 18:27:46 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 19:02:09 GMT]]></title><description><![CDATA[<p>knivil schrieb:</p>
<blockquote>
<blockquote>
<p>spielt vielleicht auch die sonstige Anordnung</p>
</blockquote>
<p>Wegen padding vielleicht.</p>
<blockquote>
<p>jetzt strukturiert man aber um und merkt</p>
</blockquote>
<p>Ich schreibe meine Quelltexte aber nicht in Bezug auf &quot;vielleicht will ich das ja irgendwann so oder so machen&quot; .</p>
</blockquote>
<p>Du willst mir erzählen du musstest deine Klassen nachträglich nie ändern? Noch nie für nen Kunden gearbeitet?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245277</guid><dc:creator><![CDATA[Cyres]]></dc:creator><pubDate>Fri, 24 Aug 2012 19:02:09 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 19:05:06 GMT]]></title><description><![CDATA[<p>Cyres schrieb:</p>
<blockquote>
<p>[...] Noch nie für nen Kunden gearbeitet?</p>
</blockquote>
<p>Vielleicht hot knivil einfach an g'scheit'n Job? <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2245278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245278</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Fri, 24 Aug 2012 19:05:06 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 19:18:47 GMT]]></title><description><![CDATA[<p>knivil ist afaik ein langzeitstudent der noch nie für eine firma geproggt hat</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245280</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245280</guid><dc:creator><![CDATA[fiase]]></dc:creator><pubDate>Fri, 24 Aug 2012 19:18:47 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 19:47:39 GMT]]></title><description><![CDATA[<p>Cyres schrieb:</p>
<blockquote>
<p>Du willst mir erzählen du musstest deine Klassen nachträglich nie ändern?</p>
</blockquote>
<p>Nein, das habe ich nicht gesagt. Aber ich programmiere nicht mit dem Gedanken &quot;Hey das kann ich in Zukunft vieleicht besser und baue schon mal viele Moeglichkeiten ein, weil im Moment weiss ich nicht was genau ich will und vor allem wie ich es will&quot;. Zumal das Beispiel eine sehr triviale Aenderung ist, die recht gut (halb)automatisch geschehen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245284</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245284</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Fri, 24 Aug 2012 19:47:39 GMT</pubDate></item><item><title><![CDATA[Reply to Naming Guide on Fri, 24 Aug 2012 22:10:23 GMT]]></title><description><![CDATA[<p>Also ich weiß nicht, wie gut z.B. VisualAssist diesen Rename kann. Ich habe nur gemerkt, dass das schon dann nicht gut klappt, wenn mehrere unterschiedliche Klassen Attribute/Methoden mit dem gleichen Namen haben. Und das kann ja nun ganz gut vorkommen.</p>
<p>Ich baue auch nicht alles mit dem Verdacht, dass man da Mal was ändern könnte. Macht man das überall und konsequent, hat man sein Projekt schnell overengineered. Aber Setter/Getter sind für mich einfach Standard aus all den möglichen Änderungs/Erweiterungsmöglichkeiten, die sich genau an der Stelle ständig ergeben. Für mich ist das auch ein Prinzip, das einfach zur Kapselung an sich gehört. Neben Eventhandlung, Logging, abgeschafftem Attribut kann man auch noch überlegen, dass sich der Typ vielleicht ändert und man eine Methode anbietet, die automatisch konvertiert.</p>
<p>Das hatte ich nämlich letztens: Ich hatte einen String, der erst nur dekorativen Charakter hatte. Später sah ich aber, dass man da doch noch gut was drumherum abstrahieren konnte, also habe ich den durch eine Klasse ersetzt. Jetzt gab es aber Getter und Setter für den String hinter dem abstrakten Objekt. Rasch die Getter und Setter so abgebaut, dass die eben auch die Konvertierung (keine besonders komplizierte, aber immerhin) übernehmen und den Rest des Programms musste ich nicht ändern.</p>
<p>Hätte ich einfach öffentlichen Zugriff auf die Attribute gewährt, na ja... um Codeduplikation zu vermeiden, hätte ich eben <em>dann</em> korrekte Setter und Getter eingebaut.</p>
<p>Ich weiß nicht, ich bin ja auch gegen Prinzipsachen, aber mir haben publike Attribute zu viele Freizüge. Klar, keiner hat vorgeschlagen alle öffentlich zu machen, aber es kommt imo wirklich häufig vor, dass man gerade die Teile refactored... Und es tut doch auch nicht weh?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245297</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245297</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Fri, 24 Aug 2012 22:10:23 GMT</pubDate></item></channel></rss>