<?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[Operator überladung]]></title><description><![CDATA[<p>Hallo ich habe hier ein Code Beispiel von Bjarne Stroustrup was für einen Sinn macht es hier month_tbl statisch zu machen?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

enum Month
{
    jan=1, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dcm
};

Month operator++(Month&amp; m)
{
        m = (m==dcm)?   jan : Month(m+1);
        return m;
}

ostream&amp; operator &lt;&lt; ( ostream &amp;os, Month m )
{
    static const char* month_tbl[12] = {
        &quot;January&quot;,&quot;February&quot;,&quot;March&quot;,&quot;April&quot;,&quot;May&quot;,&quot;June&quot;,&quot;July&quot;,
        &quot;August&quot;,&quot;September&quot;,&quot;October&quot;,&quot;November&quot;,&quot;December&quot;
    };
return os &lt;&lt; month_tbl[ m-1 ];
}

int main()
{
Month m = sep;

        ++m;                // m becomes oct
        ++m;                // m becomes nov
        ++m;                // m becomes dec
        ++m;                // m becomes jan (&quot;wrap around&quot;)
        cout&lt;&lt;m &lt;&lt;endl;

    return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/303302/operator-überladung</link><generator>RSS for Node</generator><lastBuildDate>Mon, 10 Aug 2026 14:46:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/303302.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 May 2012 13:54:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 13:54:38 GMT]]></title><description><![CDATA[<p>Hallo ich habe hier ein Code Beispiel von Bjarne Stroustrup was für einen Sinn macht es hier month_tbl statisch zu machen?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

enum Month
{
    jan=1, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dcm
};

Month operator++(Month&amp; m)
{
        m = (m==dcm)?   jan : Month(m+1);
        return m;
}

ostream&amp; operator &lt;&lt; ( ostream &amp;os, Month m )
{
    static const char* month_tbl[12] = {
        &quot;January&quot;,&quot;February&quot;,&quot;March&quot;,&quot;April&quot;,&quot;May&quot;,&quot;June&quot;,&quot;July&quot;,
        &quot;August&quot;,&quot;September&quot;,&quot;October&quot;,&quot;November&quot;,&quot;December&quot;
    };
return os &lt;&lt; month_tbl[ m-1 ];
}

int main()
{
Month m = sep;

        ++m;                // m becomes oct
        ++m;                // m becomes nov
        ++m;                // m becomes dec
        ++m;                // m becomes jan (&quot;wrap around&quot;)
        cout&lt;&lt;m &lt;&lt;endl;

    return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2210198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210198</guid><dc:creator><![CDATA[op]]></dc:creator><pubDate>Thu, 10 May 2012 13:54:38 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 14:01:15 GMT]]></title><description><![CDATA[<p>Vermutlich, damit month_tbl<br />
1. nicht zusätzlichen Stack-Speicher verbraucht (was nicht schlimm wäre)<br />
2. nicht bei jedem Aufruf neu initialisiert werden muss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2210201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210201</guid><dc:creator><![CDATA[wxSkip]]></dc:creator><pubDate>Thu, 10 May 2012 14:01:15 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 14:07:42 GMT]]></title><description><![CDATA[<p>Ich finde es auch komisch, da das eigentlich sowieso jeder Compiler optimieren müsste.<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/23670">@wxSkip</a>: Deine zwei Punkte sind dieselben (RAII <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2210203</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210203</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 10 May 2012 14:07:42 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 14:27:34 GMT]]></title><description><![CDATA[<p>So weit kommts noch, dass man sich auf Compileroptimierungen verlässt, wenn man sie mit geringem Aufwand garantiert hat ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2210214</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210214</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Thu, 10 May 2012 14:27:34 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 14:36:02 GMT]]></title><description><![CDATA[<p>Ethon schrieb:</p>
<blockquote>
<p>So weit kommts noch, dass man sich auf Compileroptimierungen verlässt, wenn man sie mit geringem Aufwand garantiert hat ...</p>
</blockquote>
<p>Heul doch nicht, Ethon! Ich werde doch auch nicht RVO &quot;selbst garantieren&quot;, das wäre lächerlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2210219</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210219</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 10 May 2012 14:36:02 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 14:46:19 GMT]]></title><description><![CDATA[<p>RVO und das sind schon zwei völlig unterschiedliche Klassen von Optimierungen (erstere würde ich nichtmal so nennen, wenn sie nicht offiziell so heißen würde).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2210222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210222</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Thu, 10 May 2012 14:46:19 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladung on Thu, 10 May 2012 15:58:54 GMT]]></title><description><![CDATA[<p>Na gut, vielleicht würde sowas nicht optimiert werden. Ist eigentlich aber egal, die Frage von TE dürfte beantwortet sein ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2210237</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2210237</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 10 May 2012 15:58:54 GMT</pubDate></item></channel></rss>